/* Shochan's pink, with dark ink and clear, comfortably sized links. */
:root{--paper:#ffe1ef;--ink:#204969;--library-pink:#c51e74;}
body{background-color:#ffe1ef;background-image:radial-gradient(#c23e8210 .7px,transparent .7px);color:#204969;}
.topline{background:#ffbbdc;color:#244a66;border-color:#ea8fbd;}
.suki-title{color:#bd1e70;}.hero-place>span{background:#ffd0e5;border-color:#dc81ac;color:#315c77;}
.suki-ticker{background:#ffb8da;border-color:#e87db0;}.suki-ticker span{color:#245f83;}#motion-toggle{background:#fff0b7;border-color:#bc8b29;color:#295a78;}
.hero-invitation,.zukan-overview-copy>p:not(.zukan-thanks),.host-introduction,.zukan-section-description,.people-note,.arrival-intro{color:#36576b;}
.people-section{background:#ffd0e6;border-color:#e99cbe;}.collection-section{background:#ffedf5;border-color:#e6a4c3;}.zukan-spread{background:#fff1c8;}.stage-stamp{background:#ffe0ee;}
.footer.footer{background:#ffc7e0;color:#193e60;border:1px solid #e78bb8;border-radius:25px 25px 0 0;padding:36px 40px 38px;box-shadow:0 -7px #f44498,0 -14px #ffdb38;margin-top:45px;}
.footer.footer:before{content:none;}
.footer.footer .footer-title{font-family:var(--serif);color:#8b1755;font-size:clamp(23px,3vw,32px);font-weight:700;line-height:1.65;letter-spacing:.015em;margin:0 0 14px;}
.footer.footer .footer-thanks{color:#234b68;font-family:var(--sans);font-size:15px;line-height:2;margin:0 0 30px;letter-spacing:.02em;max-width:650px;}
.footer.footer .footer-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:35px;align-items:start;margin:0;}
.footer.footer .footer-brand{white-space:normal;color:#204969;gap:12px;align-self:start;}
.footer.footer .footer-brand .channel-brand-icon{width:58px;height:58px;flex-shrink:0;}
.footer.footer .footer-brand strong{color:#193e60;font-size:23px;line-height:1.4;}
.footer.footer .footer-brand strong>span{color:#193e60;font-size:23px;}
.footer.footer .footer-brand strong em{color:#8b1755;font-size:14px;}
.footer.footer .footer-brand small{color:#294f68;font-size:11px;line-height:1.8;letter-spacing:.03em;}
.footer.footer .footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;align-items:stretch;}
.footer.footer .footer-links a,.footer.footer .footer-links button{display:flex;align-items:center;justify-content:space-between;min-height:53px;width:100%;padding:13px 16px;border:1px solid #d893b3;border-radius:8px;background:#fff1bd;color:#183f61;font-family:var(--sans);font-size:14px;font-weight:500;line-height:1.7;text-align:left;text-decoration:none;box-shadow:0 3px #da8bb24d;transition:background .2s,transform .2s;}
.footer.footer .footer-links button{grid-column:1/-1;background:#ffe4ef;border-color:#cf80a8;}
.footer.footer .footer-links a:hover,.footer.footer .footer-links button:hover{color:#153c5c;background:#ffe18a;transform:translateY(-2px);}
.footer.footer a:focus-visible,.footer.footer button:focus-visible{outline:3px solid #174f82;outline-offset:4px;}
@media(max-width:900px){.footer.footer .footer-top{grid-template-columns:1fr;gap:25px;}.footer.footer .footer-brand{max-width:100%;}.footer.footer .footer-thanks{font-size:15px;margin-bottom:24px;}}
@media(max-width:600px){.footer.footer{padding:28px 23px 30px;border-radius:20px 20px 0 0;}.footer.footer .footer-title{font-size:23px;}.footer.footer .footer-thanks{font-size:14px;line-height:1.9;}.footer.footer .footer-brand .channel-brand-icon{width:51px;height:51px;}.footer.footer .footer-brand strong>span{font-size:21px;}.footer.footer .footer-brand small{font-size:10px;}.footer.footer .footer-links{gap:11px;}.footer.footer .footer-links a,.footer.footer .footer-links button{min-height:55px;padding:12px 11px;font-size:12px;}.footer.footer .footer-links a:last-of-type{font-size:11px;}}
@media(prefers-reduced-motion:reduce){.footer.footer .footer-links a,.footer.footer .footer-links button{transition:none;transform:none;}}
