.gallery-page{min-height:100vh}.gallery-header{gap:24px}.gallery-header nav{display:flex;gap:24px}.gallery-header nav a[aria-current=page]{color:var(--red);border-bottom:1px solid var(--red)}.gallery-page h1{font-size:clamp(34px,4.4vw,56px);line-height:1.45}.gallery-intro{padding-top:36px;padding-bottom:46px}.gallery-back{display:inline-block;font-size:12px;color:var(--muted);margin-bottom:40px;min-height:30px}.gallery-back:hover{color:var(--red)}.gallery-intro-heading{display:flex;justify-content:space-between;align-items:end;gap:40px}.gallery-intro-heading .section-number{margin-bottom:14px}.gallery-intro-heading>p{font-size:13px;color:var(--muted);line-height:2;max-width:390px;margin-bottom:5px}.gallery-collection{padding-top:0;padding-bottom:64px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.gallery-filters{display:flex;gap:7px;flex-wrap:wrap}.gallery-filters button{min-height:44px;padding:9px 13px;border:1px solid transparent;font-size:12px;border-radius:2px;white-space:nowrap;transition:background .18s}.gallery-filters button:hover{background:#e5e8d9}.gallery-filters button[aria-pressed=true]{background:var(--green);color:var(--paper-light);border-color:var(--green)}.gallery-filters button span{font-size:10px;opacity:.7;margin-left:8px}.gallery-search{display:flex;align-items:center;border:1px solid #c7cbbb;min-height:44px;min-width:230px;padding:0 11px;background:#f8f7ed}.search-icon{font:25px/1 var(--serif);margin-right:7px;color:var(--muted)}.gallery-search input{border:0;background:none;width:100%;font:12px var(--sans);color:var(--ink);padding:11px 0;outline-offset:4px;min-width:0}.gallery-search kbd{font:11px var(--sans);border:1px solid var(--line);width:18px;text-align:center;color:var(--muted)}.gallery-meta{display:flex;justify-content:space-between;gap:15px;margin:23px 0;font-size:11px;color:var(--muted)}.partner-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px 22px}.partner-card{min-width:0;padding:0;text-align:left;display:block;transition:transform .2s}.partner-card:hover{transform:translateY(-5px)}.partner-card .partner-image{background:#e5e4d6;aspect-ratio:2/3;border-radius:3px;overflow:hidden;box-shadow:0 4px 11px #293f3319;position:relative}.partner-card img{width:100%;height:100%;object-fit:contain;transition:transform .3s}.partner-card:hover img{transform:scale(1.025)}.partner-label{margin-top:12px;display:flex;gap:10px;align-items:center;justify-content:space-between}.partner-label h2{font:22px/1.4 GuaiDisplay,var(--serif);letter-spacing:.03em}.partner-label span{color:var(--muted);font-size:10px}.partner-card>p{font-size:11px;color:var(--muted);line-height:1.7;margin-top:5px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.partner-image:after{content:'↗';position:absolute;right:9px;bottom:9px;width:26px;height:26px;background:#f8f4e5e8;color:var(--green);font:16px/26px var(--sans);text-align:center;border-radius:50%;opacity:0;transition:opacity .2s}.partner-card:hover .partner-image:after,.partner-card:focus-visible .partner-image:after{opacity:1}.sticker-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.sticker-card{padding:17px 12px 19px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:background .2s;min-width:0;text-align:center}.sticker-card:hover{background:#e8ecdf}.sticker-card img{width:100%;aspect-ratio:1/1;object-fit:contain}.sticker-card h2{font:20px/1.6 GuaiDisplay,var(--serif);margin-top:10px}.sticker-card span{font-size:10px;color:var(--muted)}.gallery-footnote{font-size:11px;line-height:1.9;color:var(--muted);margin-top:38px;text-align:center}.gallery-empty{padding:70px 20px;text-align:center;display:grid;justify-content:center;gap:10px;color:var(--muted)}.gallery-empty>p{font:24px/1.6 var(--serif);color:var(--ink)}.gallery-empty>span{font-size:12px}.gallery-empty .text-link{justify-self:center}.gallery-footer{max-width:1120px;margin:0 auto;padding:38px 0 48px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:center}.gallery-footer .brand-name{font-size:25px}.gallery-footer p{font-size:11px;color:var(--muted)}.gallery-dialog{padding:0;border:1px solid #cccab5;max-width:980px;width:calc(100vw - 40px);max-height:calc(100dvh - 40px);background:var(--paper-light);color:var(--ink);box-shadow:0 25px 90px #18342855;overflow:auto;overscroll-behavior:contain}.gallery-dialog::backdrop{background:#18342ae6;backdrop-filter:blur(5px)}.dialog-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);position:relative}.dialog-close{position:absolute;right:10px;top:10px;z-index:2;width:44px;height:44px;background:var(--paper-light);border:1px solid var(--line);font:28px/1 var(--sans);border-radius:50%;display:grid;place-items:center}.dialog-art{padding:30px;background:#e8e9dc;display:flex;justify-content:center;align-items:flex-start}.dialog-art img{width:100%;height:auto;max-height:calc(100dvh - 104px);object-fit:contain}.dialog-copy{padding:45px 35px 25px;min-width:0}.dialog-kicker{font-size:10px;color:var(--muted);letter-spacing:.1em;margin-bottom:8px}.dialog-copy h2{font:38px/1.5 GuaiDisplay,var(--serif);margin-right:22px}.dialog-motto{font:18px/1.8 var(--serif);margin-top:9px}.dialog-source{font-size:11px;line-height:1.8;color:var(--muted);margin-top:13px}.dialog-lore{margin-top:24px;font-size:13px;line-height:2;color:#54634f}.dialog-lore p+p{margin-top:14px}.dialog-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.dialog-actions .button{gap:14px;font-size:12px;padding:10px 17px;min-height:44px}.dialog-tip{font-size:10px;color:var(--muted);line-height:1.9;margin-top:13px}.dialog-paging{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px;padding-top:15px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.dialog-paging button{min-height:44px;padding:5px 0}.dialog-paging button:hover{color:var(--red)}.gallery-dialog.is-emote{max-width:780px}.is-emote .dialog-art{align-items:center;padding:45px 25px}.is-emote .dialog-art img{width:280px;max-width:100%;aspect-ratio:1/1;image-rendering:auto}.is-emote .dialog-lore{margin-top:20px}.is-emote .dialog-copy{padding-top:50px}body.dialog-open{overflow:hidden}
@media(max-width:1000px){.gallery-toolbar{align-items:flex-start;flex-direction:column}.gallery-search{width:100%;max-width:400px}.partner-grid{gap:25px 16px;grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-footer{margin:0 30px}.sticker-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-intro-heading{gap:24px}.gallery-intro-heading>p{max-width:270px}.gallery-header nav{gap:20px}}
@media(max-width:640px){.gallery-header{height:auto;min-height:80px;padding:15px 20px;align-items:center;gap:15px;position:static;flex-wrap:wrap}.gallery-header .brand-name{font-size:24px}.gallery-header .brand small{font-size:8px}.gallery-header .seal{width:30px;height:36px;font-size:25px}.gallery-header nav{position:static;display:flex!important;background:none;border:0;padding:0;width:auto;gap:15px;margin-left:auto}.gallery-header nav a{font-size:11px;padding:9px 0}.gallery-header nav a:first-child{display:none}.gallery-intro{padding:24px 20px 29px}.gallery-back{margin-bottom:20px}.gallery-intro-heading{display:block}.gallery-intro-heading>p{margin-top:17px;max-width:none;font-size:12px}.gallery-page h1{font-size:34px;line-height:1.45}.gallery-intro .section-number{font-size:10px;margin-bottom:10px}.gallery-collection{padding:0 20px 45px}.gallery-toolbar{padding:17px 0;gap:16px}.gallery-filters{gap:4px}.gallery-filters button{font-size:11px;padding:8px 10px}.gallery-search{max-width:none}.gallery-search kbd{display:none}.gallery-meta{font-size:10px;margin:17px 0}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 15px}.partner-label h2{font-size:24px}.partner-card>p{font-size:11px}.partner-label span{font-size:9px}.sticker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sticker-card{padding:12px 7px 15px}.sticker-card h2{font-size:20px;margin-top:5px}.gallery-footnote{text-align:left;line-height:1.9}.gallery-footer{margin:0 20px;padding:28px 0 35px;flex-direction:column;gap:12px;text-align:center}.gallery-footer .text-link{font-size:11px}.gallery-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.dialog-shell{grid-template-columns:1fr}.dialog-art{padding:30px 40px 22px}.dialog-art img{width:auto;max-width:100%;max-height:57dvh}.dialog-copy{padding:24px}.dialog-copy h2{font-size:34px}.dialog-kicker{font-size:10px}.dialog-lore{font-size:13px;margin-top:20px}.dialog-close{width:42px;height:42px}.is-emote .dialog-art{padding:30px 25px 10px}.is-emote .dialog-art img{width:240px}.is-emote .dialog-copy{padding-top:20px}.dialog-paging{margin-top:20px}.gallery-dialog.is-emote{max-width:450px}}
@media(prefers-reduced-motion:reduce){.gallery-page *{scroll-behavior:auto!important;transition:none!important}}

/* Gallery controls: quiet paper feedback and clear keyboard focus. */
.gallery-page :is(.partner-card,.sticker-card){transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease}
.gallery-page :is(.partner-card,.sticker-card):focus-visible{outline:2px solid var(--red);outline-offset:4px}
.gallery-page .sticker-card:focus-visible{background:#e8ecdf;box-shadow:inset 0 0 0 1px #9aaa8c}
.gallery-page .partner-card:focus-visible .partner-image{box-shadow:0 5px 14px #293f3326,inset 0 0 0 1px #9aaa8c}
.gallery-page :is(.gallery-filters button,.dialog-close,.dialog-paging button,.dialog-actions .button,.gallery-empty button){transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .15s ease}
.gallery-page :is(.gallery-filters button,.dialog-close,.dialog-paging button,.dialog-actions .button,.gallery-empty button):focus-visible{outline:2px solid var(--red);outline-offset:4px}
.gallery-page :is(.gallery-filters button,.dialog-close,.dialog-paging button,.dialog-actions .button,.gallery-empty button):not(:disabled):active{transform:translateY(1px)}
.gallery-page .dialog-paging button:disabled{opacity:.38;cursor:default}
@media(hover:hover){.gallery-page .sticker-card:hover{background:#e8ecdf;box-shadow:inset 0 0 0 1px #9aaa8c;transform:translateY(-2px)}.gallery-page .partner-card:hover{transform:translateY(-3px)}.gallery-page .gallery-filters button:not([aria-pressed=true]):hover{border-color:#b4c1a7;background:#e5e8d9}.gallery-page .dialog-close:hover{background:#e7ebdc;border-color:#a4b097}.gallery-page .dialog-paging button:not(:disabled):hover{text-decoration:underline;text-underline-offset:5px}.gallery-page .dialog-actions .button:hover{box-shadow:inset 0 0 0 1px #8b9b7655}}
.gallery-page :is(.partner-card,.sticker-card):active{transform:translateY(1px) scale(.99)}
@media(prefers-reduced-motion:reduce){.gallery-page :is(.partner-card,.sticker-card):is(:hover,:active),.gallery-page .partner-card:hover img,.gallery-page :is(.gallery-filters button,.dialog-close,.dialog-paging button,.dialog-actions .button,.gallery-empty button):active{transform:none}}
