:root{--paper:#fcf7ef;--sand:#efe3d2;--ink:#1d2940;--muted:#586174;--brand:#da291c;--brand-dark:#ac1f16;--panel:#fff;--line:#1d29401f;--shadow:0 24px 60px #1d29401f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:radial-gradient(circle at top, #da291c1f, transparent 30%), linear-gradient(180deg, #fffdf8 0%, var(--paper) 100%);margin:0;font-family:Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.app{display:block}.artwork-page{min-height:100vh;padding:32px 0 64px;display:block}.campaign-page{min-height:100vh;padding:0 0 64px;display:block}.privacy-page{min-height:100vh;display:block}.shell{width:min(1120px,100% - 32px);margin:0 auto}.topbar{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#ffffffdb;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:20px;min-height:78px;display:flex}.topbar-inner-campaign{grid-template-columns:1fr auto 1fr;display:grid}.brand-campaign{grid-column:2;justify-self:center}.topbar-campaign .nav{grid-column:3;justify-self:end}.topbar-campaign .brand-logo{width:min(290px,56vw)}.brand img,.brand-logo{width:min(260px,48vw)}.nav{color:var(--muted);align-items:center;gap:18px;font-size:.95rem;display:flex}.hero{text-align:center;padding:40px 0 24px}.hero h1{letter-spacing:-.04em;margin:0;font-size:clamp(2.2rem,5vw,4.2rem);line-height:.95}.tagline{width:min(760px,100%);color:var(--muted);margin:14px auto 0;font-size:1.15rem;line-height:1.65}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:24px;display:flex}.button{min-height:52px;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-weight:700;transition:all .16s;display:inline-flex}.button svg{fill:currentColor;width:20px;height:20px}.button.primary{background:var(--brand);color:#fff;box-shadow:0 16px 36px #da291c38}.button.primary:hover{background:var(--brand-dark)}.button.secondary{border-color:var(--line);background:#fff}.feature{background:var(--panel);box-shadow:var(--shadow);border-radius:28px;grid-template-columns:1.05fr .95fr;display:grid;overflow:hidden}.feature-visual{background:#ddd;min-height:520px;position:relative}.feature-visual img{object-fit:cover;width:100%;height:100%}.ribbon{background:var(--brand);color:#fff;letter-spacing:.02em;border-radius:14px 14px 14px 4px;padding:10px 14px;font-size:1.15rem;font-weight:700;position:absolute;top:22px;left:22px}.feature-copy{flex-direction:column;justify-content:center;gap:20px;padding:44px;display:flex}.kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.16em;margin:0;font-size:.8rem}.feature-copy h2{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.muted{color:var(--muted)}.countdown-card,.story-card,.gallery-card,.support-card,.vote-card,.charity-card{box-shadow:var(--shadow);background:#ffffffd1;border-radius:28px;margin-top:28px;padding:32px}.countdown-card{text-align:center}.countdown-grid{grid-template-columns:repeat(4,minmax(72px,1fr));gap:12px;width:min(520px,100%);margin:20px auto 0;display:grid}.countdown-block{border:1px solid var(--line);background:#fff;border-radius:22px;padding:16px 10px}.countdown-value{font-size:clamp(1.8rem,5vw,2.8rem);font-weight:700;display:block}.countdown-label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:4px;font-size:.82rem;display:block}.section-title{letter-spacing:-.04em;margin:0 0 18px;font-size:clamp(1.8rem,4vw,3rem)}.story-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.story-item{border:1px solid var(--line);background:#fff;border-radius:22px;padding:24px}.story-item strong{margin-bottom:10px;font-size:1.02rem;display:block}.story-item p{color:var(--muted);margin:0;line-height:1.7}.gallery-grid{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.gallery-grid a{aspect-ratio:1;background:#e9e2d8;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px #1d294014}.gallery-grid img{object-fit:cover;width:100%;height:100%;transition:transform .18s}.gallery-grid a:hover img{transform:scale(1.04)}.support-card,.charity-card{text-align:center}.support-card p,.charity-card p{width:min(640px,100%);color:var(--muted);margin:12px auto 0;line-height:1.7}.vote-card{padding:0;overflow:hidden}.vote-banner img{width:100%;height:auto}.vote-banner-link{display:block}.vote-body{text-align:center;padding:32px}.vote-body p{width:min(760px,100%);color:var(--muted);margin:0 auto;line-height:1.7}.vote-heading{letter-spacing:.02em;margin:28px 0 0;font-size:1.2rem}.vote-options{width:min(760px,100%);margin:28px auto 0}.vote-option{border:1px solid var(--line);text-align:left;background:#fff;border-radius:20px;grid-template-columns:1fr auto;align-items:center;gap:16px;margin-top:12px;padding:18px 20px;display:grid}.vote-option.highlight{border-color:#da291c59;box-shadow:0 16px 36px #da291c1f}.vote-option.free-vote{background:linear-gradient(135deg,#1c7b601a,#fffffffa);border-color:#1c7b6059;box-shadow:0 18px 40px #1c7b6024}.vote-option-label{font-size:1.1rem;font-weight:700}.vote-option-label strong{color:#146b54}.vote-pill{background:var(--brand);color:#fff;letter-spacing:.03em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-width:148px;min-height:48px;padding:0 18px;font-weight:700;display:inline-flex}.vote-pill.secondary{background:#1c7b60;box-shadow:0 16px 36px #1c7b6038}.vote-other{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(760px,100%);margin:14px auto 0;overflow:hidden}.vote-other summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;font-size:1.1rem;font-weight:700;list-style:none;display:flex}.vote-other summary::-webkit-details-marker{display:none}.vote-other-body{border-top:1px solid var(--line);padding:0 20px 20px}.vote-other-body p{text-align:left;width:100%;margin:16px 0 12px}.vote-other-form{grid-template-columns:1fr auto;gap:12px;display:grid}.vote-other-form input{border:1px solid var(--line);min-height:48px;font:inherit;border-radius:14px;padding:0 14px}.vote-other-form button{background:var(--brand);color:#fff;min-height:48px;font:inherit;cursor:pointer;border:0;border-radius:14px;padding:0 18px;font-weight:700}.campaign-hero{text-align:center;padding:40px 0 24px}.campaign-kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.24em;margin:0 0 12px;font-size:1.2rem}.campaign-title{letter-spacing:-.04em;margin:0;font-size:clamp(2.1rem,5vw,3.8rem);line-height:.95}.campaign-tagline{width:min(620px,100%);color:var(--muted);margin:16px auto 0;font-size:1.02rem;line-height:1.6}.campaign-card{width:min(760px,100%);box-shadow:var(--shadow);text-align:center;background:#ffffffe0;border-radius:28px;margin:0 auto;padding:32px}.campaign-card p{color:var(--muted);margin:0;line-height:1.65}.campaign-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px;display:flex}.campaign-note{border:1px solid var(--line);background:#fff;border-radius:18px;margin-top:24px;padding:18px 20px}.campaign-note strong{color:var(--ink);margin-bottom:6px;display:block}.artwork-shell{width:min(1120px,100% - 32px);margin:0 auto}.privacy-shell{width:min(920px,100% - 32px);margin:0 auto;padding:32px 0 0}.privacy-hero,.privacy-card{box-shadow:var(--shadow);background:#ffffffe0;border-radius:28px}.privacy-hero{background:radial-gradient(circle at 0 0,#da291c24,#0000 42%),radial-gradient(circle at 100% 0,#1d294014,#0000 38%),#ffffffe6;padding:32px}.privacy-hero h1{letter-spacing:-.04em;margin:0 0 12px;font-size:clamp(2.2rem,5vw,4rem);line-height:.96}.privacy-hero p{margin:12px 0 0;line-height:1.7}.privacy-badge{min-height:36px;color:var(--brand-dark);letter-spacing:.04em;text-transform:uppercase;background:#da291c1a;border:1px solid #da291c29;border-radius:999px;align-items:center;padding:0 14px;font-size:.9rem;font-weight:700;display:inline-flex}.privacy-card{margin-top:20px;padding:28px 32px}.privacy-card h2{letter-spacing:-.03em;margin:0 0 12px;font-size:clamp(1.5rem,4vw,2rem)}.privacy-card h3{letter-spacing:.01em;margin:24px 0 10px;font-size:1.08rem}.privacy-card p{color:var(--muted);margin:0;line-height:1.75}.privacy-card p+p{margin-top:14px}.privacy-list{color:var(--muted);margin:14px 0 0;padding-left:1.25rem}.privacy-list li+li{margin-top:8px}.privacy-notice,.privacy-contact{border-radius:20px;margin-top:18px;padding:18px 20px}.privacy-notice{color:#215447;background:#1c7b6014;border-left:4px solid #1c7b60}.privacy-contact{border:1px solid var(--line);background:#1d29400a}.privacy-contact p{color:var(--ink)}.privacy-contact p+p{margin-top:10px}.privacy-footnote{color:var(--muted);text-align:center;margin:24px 0 0;line-height:1.7}.privacy-shell code{background:#1d294014;border-radius:8px;padding:2px 6px;font-family:Courier New,monospace;font-size:.92em}.artwork-back{background:var(--brand);color:#fff;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;font-size:.95rem;font-weight:700;transition:all .16s;display:inline-flex;box-shadow:0 16px 36px #da291c38}.artwork-back:hover{background:var(--brand-dark)}.artwork-card{box-shadow:var(--shadow);background:#ffffffe6;border-radius:28px;padding:24px}.artwork-card img{background:#fff;border-radius:20px;width:100%;height:auto}.artwork-title{letter-spacing:-.04em;margin:0 0 18px;font-size:clamp(1.8rem,4vw,3rem)}.artwork-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.artwork-actions .artwork-back,.artwork-actions .button{flex:220px;min-height:52px}.artwork-actions .button{box-shadow:0 16px 36px #da291c38}footer{color:var(--muted);text-align:center;padding:42px 0 64px}footer nav{flex-wrap:wrap;justify-content:center;gap:16px;margin-bottom:18px;display:flex}.site-version{color:var(--muted);margin-top:8px;font-size:.9rem}@media (width<=940px){.feature{grid-template-columns:1fr}.feature-visual{min-height:420px}.story-grid,.gallery-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=700px){.topbar-inner{min-height:70px}.topbar-inner-campaign{grid-template-columns:1fr;justify-items:center}.brand-campaign{grid-column:1}.nav{display:none}.feature-copy,.countdown-card,.story-card,.gallery-card,.support-card{padding:22px}.story-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.hero-actions{flex-direction:column;align-items:stretch;margin-top:14px}.hero-actions .button{width:100%}.campaign-card{padding:24px}.privacy-hero,.privacy-card{border-radius:24px;padding:24px}.artwork-card{padding:18px}.artwork-actions{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:18px}.artwork-actions .artwork-back,.artwork-actions .button{letter-spacing:.02em;flex-basis:auto;min-height:40px;padding:0 14px;font-size:.76rem}}@media (width<=560px){.story-grid{grid-template-columns:1fr}}
