/* Shared editorial columns keep consecutive sections on the same baseline. */
:root{--editorial-columns:minmax(0,.72fr) minmax(0,1.6fr);--editorial-gap:48px}
.manifesto.section,.creation.section,.store-gateway,.company-gateway.section{display:grid;grid-template-columns:var(--editorial-columns);column-gap:var(--editorial-gap);align-items:start}
.manifesto-title,.manifesto-copy,.creation-head,.creation-body,.store-gateway-content,.company-gateway-copy{min-width:0}
.manifesto-copy,.creation-body{width:100%;max-width:none;margin:0;padding:0;justify-self:stretch}
.creation>.chapter{grid-column:1/-1}
.manifesto-copy,.creation-body,.store-gateway-content,.company-gateway-copy{text-align:left;font-size:1rem;line-height:1.95}
.manifesto-copy p,.creation-body p{margin:0}
.manifesto-copy p+p,.creation-body p+p{margin-top:24px}
.manifesto-copy .lead{margin:0 0 24px;line-height:1.8}
main p,main dd,main li{line-break:strict;word-break:normal;overflow-wrap:break-word;text-wrap:pretty}
main :is(h1,h2,h3){line-break:strict;word-break:normal;overflow-wrap:break-word;text-wrap:balance}
.brand-profile-info h3{overflow-wrap:normal;min-height:3em}
.brand-profile-info dd,.profile dd{min-width:0}
.company-detail{grid-template-columns:var(--editorial-columns);column-gap:var(--editorial-gap)}
.company-detail>div{min-width:0}
.company-index a{min-width:0}
.footer-lead{gap:28px 48px}.footer-lead>p{margin:0}
/* Soft light and shade spread like ripples, without drawn borders. */
.water-ripple{position:fixed;z-index:100;width:76px;height:76px;pointer-events:none;border:0;outline:0;box-shadow:none;border-radius:50%;background:radial-gradient(circle,transparent 26%,rgba(161,151,124,.09) 31%,rgba(245,244,234,.16) 35%,transparent 42%,transparent 53%,rgba(157,151,130,.12) 58%,rgba(242,241,231,.2) 62%,transparent 69%);filter:blur(.7px);animation:water-spread 1.5s cubic-bezier(.16,.55,.3,1) both;will-change:transform,opacity}
.water-ripple-click{width:108px;height:108px;animation-duration:1.9s}
@keyframes water-spread{0%{transform:translate(-50%,-50%) scale(.12);opacity:0}15%{opacity:.85}65%{opacity:.38}100%{transform:translate(-50%,-50%) scale(1.25);opacity:0}}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.water-ripple{display:none;animation:none}}
@media(max-width:900px){
 .manifesto.section,.creation.section,.store-gateway,.company-gateway.section,.company-detail{grid-template-columns:minmax(0,1fr);row-gap:24px}
 .manifesto-copy,.creation-body,.store-gateway-content,.company-gateway-copy{margin:0;grid-column:1;grid-row:auto}
 .manifesto-title{margin:0}.creation-head .vertical-title{margin-top:0}
 .company-detail .detail-label{margin-bottom:0}
 .brand-profile-info h3{min-height:0}
}
@media(max-width:620px){
 .manifesto-copy,.creation-body,.store-gateway-content,.company-gateway-copy{font-size:1rem;line-height:1.9}
 .manifesto-copy p+p,.creation-body p+p{margin-top:20px}
 .brand-profile-info h3{font-size:1.125rem;line-height:1.6}
 .profile dl>div{grid-template-columns:80px minmax(0,1fr)}
 .category-motion .motion-word{max-width:100%;white-space:normal;overflow-wrap:anywhere}
}

.footer-legal-links{display:flex;align-items:center;justify-content:flex-end;gap:10px 22px;flex-wrap:wrap;min-width:0;max-width:100%}
.footer-legal-links a{max-width:100%;white-space:normal}
@media(max-width:620px){.footer-legal-links{gap:8px 16px}.footer-meta{max-width:100%}}
