.page-hero{padding:8rem 2rem 4rem;position:relative;overflow:hidden}.page-hero__blob{filter:blur(60px);pointer-events:none;background:#ffffff06;border-radius:50%;width:600px;height:280px;position:absolute;top:5rem;left:50%;transform:translate(-50%)}.page-hero__inner{max-width:64rem;margin:0 auto;position:relative}.page-hero--guest{text-align:center}.page-hero__label{letter-spacing:.25em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.5rem;font-size:.7rem;display:block}.page-hero__title{font-family:var(--font-display);color:var(--color-text);margin:0;font-size:clamp(2.25rem,5vw,3.5rem);font-style:italic;font-weight:300;line-height:1.1}.page-hero__subtitle{color:var(--color-text-muted);margin-top:.6rem;font-size:.9rem}.page-divider{border:none;border-top:1px solid var(--color-border);margin:0 2rem}.gallery-main{max-width:78rem;margin:0 auto;padding:3rem 2rem}.gallery-grid{columns:2;column-gap:.75rem}@media (min-width:768px){.gallery-grid{columns:3}}@media (min-width:1024px){.gallery-grid{columns:4}}.gallery-card{break-inside:avoid;margin-bottom:.75rem;text-decoration:none;display:block}.gallery-card__inner{border-radius:var(--radius-sm);background:var(--color-surface);position:relative;overflow:hidden}.gallery-card__img{object-fit:cover;width:100%;transition:transform var(--transition-slow) ease-out;display:block}.gallery-card:hover .gallery-card__img{transform:scale(1.04)}.gallery-card__overlay{opacity:0;transition:opacity var(--transition-base);background:linear-gradient(#0000 0%,#0000002e 50%,#000000c7 100%);flex-direction:column;justify-content:flex-end;padding:.75rem;display:flex;position:absolute;inset:0}.gallery-card:hover .gallery-card__overlay{opacity:1}.gallery-card__title{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.875rem;font-weight:500;overflow:hidden}.gallery-card__meta{align-items:center;gap:.4rem;margin-top:.25rem;display:flex}.gallery-card__dot{background:#ffffff73;border-radius:50%;flex-shrink:0;width:.2rem;height:.2rem}.gallery-card__author{color:#ffffff8c;font-size:.75rem}.gallery-empty{color:#ffffff2e;flex-direction:column;align-items:center;gap:1rem;padding:8rem 0;display:flex}.gallery-empty__text{letter-spacing:.2em;text-transform:uppercase;font-size:.75rem}.random-draw{margin-top:2rem;padding:0 2rem}.random-draw__panel{border:1px solid var(--color-border);background:radial-gradient(circle at top left, #ffffff14, transparent 34%), linear-gradient(135deg, var(--color-surface), color-mix(in srgb, var(--color-surface) 80%, transparent));border-radius:1.5rem;gap:1rem;max-width:78rem;margin:0 auto;padding:2rem;display:grid}.random-draw__content{grid-template-columns:minmax(0,1.1fr) minmax(260px,360px);align-items:center;gap:1.5rem;display:grid}.random-draw__copy{gap:1rem;display:grid}.random-draw__summary{color:var(--color-text-soft);margin:0;font-size:.95rem;line-height:1.6}.random-draw__filters{gap:1rem;display:grid}.random-draw__filter-group{gap:.6rem;display:grid}.random-draw__filter-label{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);font-size:.74rem}.random-draw__chips{flex-wrap:wrap;gap:.65rem;display:flex}.random-draw__chip{border:1px solid var(--color-border);color:var(--color-text-soft);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);background:0 0;border-radius:9999px;padding:.7rem .95rem;font-size:.8rem}.random-draw__chip:hover{border-color:var(--color-border-mid);transform:translateY(-1px)}.random-draw__chip--active{background:var(--color-text);border-color:var(--color-text);color:var(--background)}.random-draw__eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--color-text-muted);font-size:.72rem}.random-draw__title{max-width:28rem;font-family:var(--font-display);color:var(--color-text);margin:0;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.05}.random-draw__prompt{border:1px solid var(--color-border);background:var(--surface-muted);max-width:40rem;color:var(--color-text);border-radius:1rem;margin:0;padding:1rem 1.1rem;font-size:clamp(1.1rem,2vw,1.5rem);font-weight:600;line-height:1.35}.random-draw__game{color:var(--color-text-muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.82rem}.random-draw__button{border:1px solid var(--color-border-mid);background:var(--color-text);width:fit-content;color:var(--background);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast), opacity var(--transition-fast);border-radius:9999px;padding:.9rem 1.25rem;font-size:.82rem;font-weight:600;box-shadow:0 14px 28px #0000002e}.random-draw__image-wrap{border:1px solid var(--color-border);background:radial-gradient(circle at top,#ffffff1f,#0000 40%),linear-gradient(#ffffff0a,#ffffff03);border-radius:1.25rem;justify-content:center;align-items:flex-end;min-height:360px;padding:1rem;display:flex;overflow:hidden}.random-draw__image{object-fit:contain;filter:drop-shadow(0 16px 32px #00000038);width:100%;max-width:280px;max-height:420px;display:block}.random-draw__empty,.random-draw__image-empty{color:var(--color-text-muted);margin:0;font-size:.95rem;line-height:1.6}.random-draw__image-empty{text-align:center}.random-draw__button:hover{opacity:.92;transform:translateY(-1px)}.random-draw__button:disabled{opacity:.45;cursor:not-allowed;transform:none}.random-draw__button:active{transform:translateY(0)}@media (max-width:640px){.random-draw{padding:0 1rem}.random-draw__panel{border-radius:1.1rem;padding:1.4rem}.random-draw__content{grid-template-columns:1fr}.random-draw__image-wrap{order:-1;min-height:280px}.random-draw__button{width:100%}}.gallery-footer{border-top:1px solid var(--color-border);margin-top:4rem;padding:2rem}.gallery-footer__inner{justify-content:space-between;align-items:center;max-width:78rem;margin:0 auto;display:flex}.gallery-footer__brand{font-family:var(--font-display);color:var(--color-text-dim);font-size:1rem;font-style:italic}.gallery-footer__copy{letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-dim);font-size:.7rem}
