:root{color-scheme:light;--ink:#1e2632;--muted:#505c6d;--animal:#bcd0e1}
*{box-sizing:border-box}html{background:#fff}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Noto Sans JP","Segoe UI",Meiryo,"Yu Gothic",sans-serif;-webkit-font-smoothing:antialiased}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.site-header{max-width:1440px;margin:auto;padding:24px 4.25%;font-size:27px;letter-spacing:-.025em}main{width:min(100% - 64px,1000px);margin:auto;text-align:center}.intro{padding-top:54px}.cat-face{display:block;margin:auto;width:128px;height:110px}h1{font-size:clamp(38px,6.6vw,80px);line-height:1.3;letter-spacing:.015em;margin:25px -25px 0;font-weight:800}.subtitle{margin:0;color:#4d5869;font-size:36px;letter-spacing:.085em;line-height:1.6}.accent{width:156px;height:7px;border-radius:10px;background:linear-gradient(90deg,#8846f8,#247dff);margin:32px auto 40px}.categories{list-style:none;padding:0;margin:0 auto;display:flex;justify-content:center;align-items:center;max-width:720px}.categories li{display:flex;align-items:center;justify-content:center;gap:14px;padding:0 36px;font-size:26px;line-height:40px}.categories li+li{border-left:1px solid #d9e2ec}.icon{width:38px;height:40px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round;color:#465365}.description{font-size:32px;line-height:1.75;font-weight:500;margin:60px auto 60px;letter-spacing:.015em}mark{color:inherit;background:linear-gradient(0deg,#ddf4ff 0%,#e1f5ff 85%,transparent 85%);border-radius:4px;padding:3px 5px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:46px;text-align:left}.social-card{color:#121a25;text-decoration:none;display:flex;align-items:center;gap:30px;position:relative;min-height:136px;border-radius:24px;padding:22px 34px;border:1px solid #dbe2ec;background:#f5f6f8;box-shadow:0 2px 4px #273e5b24,0 5px 14px #334b6410;transition:transform .2s ease,box-shadow .2s ease}.note-card{background:#eef8ff;border-color:#c1e3ff}.social-card:hover{transform:translateY(-5px);box-shadow:0 9px 22px #385c7c24}.social-card:focus-visible{outline:3px solid #476be0;outline-offset:5px}.brand-icon{flex-shrink:0;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;width:52px;height:56px;stroke-width:4}.x-icon{stroke-width:2.6;stroke-linecap:butt;stroke-linejoin:miter}.card-copy{display:flex;flex-direction:column;gap:3px}.card-title{font-size:40px;font-weight:750;line-height:1.15;letter-spacing:-.035em}.card-description{font-size:21px;line-height:1.6;white-space:nowrap}.external-icon{width:24px;height:24px;fill:none;stroke:#536174;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;position:absolute;right:30px;top:42px}.lab-note{display:flex;align-items:center;justify-content:center;gap:22px;font-size:24px;letter-spacing:.065em;color:var(--muted);line-height:1.8;margin:46px -30px 0}.lab-note .icon{height:40px;width:32px;color:#727e8e}.site-footer{position:relative;min-height:318px;padding-top:17px;overflow:hidden}.animal-parade{position:relative;margin:0 auto;width:min(700px,90%);height:180px;color:var(--animal)}.animal{position:absolute;object-fit:contain}.crow{left:2%;top:8px;width:92px;height:88px}.walking-cat{left:26%;top:53px;width:116px;height:100px}.bichon{left:64%;top:80px;width:120px;height:90px}.tracks{position:absolute;inset:0;width:100%;height:100%}.waves{position:absolute;bottom:0;left:0;width:100%;height:155px;z-index:0}.copyright{position:relative;z-index:1;margin:42px 20px 60px;text-align:center;color:#4a576a;font-size:20px}.copyright small{font-size:inherit}
@media(min-width:1440px){.intro{padding-top:70px}}
@media(max-width:1000px){h1{font-size:6.5vw;margin-left:0;margin-right:0}.subtitle{font-size:29px}.categories li{padding:0 26px}.social-links{gap:24px}.social-card{padding:24px;gap:20px}.card-description{font-size:17px}.card-title{font-size:35px}.external-icon{right:20px;top:30px}.description{font-size:27px}.lab-note{font-size:20px;margin-left:0;margin-right:0}}
@media(max-width:640px){.site-header{padding:20px 24px;font-size:19px}main{width:calc(100% - 40px)}.intro{padding-top:34px}.cat-face{width:88px;height:78px}h1{font-size:clamp(26px,7.1vw,45px);margin-top:24px;letter-spacing:0;white-space:nowrap}.subtitle{font-size:clamp(14px,4.1vw,24px);letter-spacing:.055em;margin-top:8px}.accent{width:100px;height:5px;margin:26px auto 30px}.categories{max-width:370px}.categories li{font-size:16px;gap:7px;padding:0 12px;line-height:28px}.categories .icon{width:24px;height:27px}.description{font-size:20px;line-height:1.95;margin:35px 0 36px;letter-spacing:0}.desktop-break{display:none}.social-links{grid-template-columns:1fr;gap:18px;max-width:440px;margin:auto}.social-card{min-height:112px;border-radius:20px;padding:22px 26px;gap:24px}.brand-icon{width:42px;height:48px}.card-title{font-size:32px}.card-description{font-size:17px}.external-icon{right:24px;top:30px;width:21px;height:21px}.lab-note{font-size:16px;gap:13px;margin-top:32px;letter-spacing:.02em;text-align:left;align-items:flex-start}.lab-note .icon{width:26px;height:34px;margin-top:6px}.site-footer{min-height:244px;padding-top:24px}.animal-parade{height:132px;max-width:400px}.crow{width:60px;height:60px;top:0;left:1%}.walking-cat{width:74px;height:68px;top:33px;left:27%}.bichon{width:78px;height:65px;top:52px;left:65%}.copyright{font-size:13px;margin:25px 12px 30px}.waves{height:94px}}
@media(prefers-reduced-motion:reduce){.social-card{transition:none}.social-card:hover{transform:none}}
@media(max-width:640px){.categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.categories li{padding:0 6px;font-size:15px;gap:6px}.categories .icon{width:22px;height:25px}.social-card{padding-left:22px;padding-right:22px;gap:20px}.card-description{font-size:clamp(14px,4.2vw,17px)}}@media(min-width:1001px){.intro{padding-top:47px}h1{font-size:clamp(72px,7.33vw,88px)}.accent{margin-top:26px}.description{margin-top:56px}.copyright{margin-top:28px}}

/* Scale the complete composition, including SVGs and spacing, to 75%. */
body{zoom:.75;min-height:calc(100vh / .75);display:flex;flex-direction:column}
.site-header{width:100%;margin:0 auto}
main{margin:0 auto}
.site-footer{width:100%;margin-top:auto;flex-shrink:0}
