:root{--blue:#143bdb;--ink:#10277d;--yellow:#faff62;--pink:#ff92d0;--paper:#fffef6;--orange:#ff6c32;--line:rgba(16,39,125,.25);font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:6px}.skip{position:fixed;left:15px;top:-80px;padding:15px;background:var(--yellow);z-index:20}.skip:focus{top:15px}.site-header{padding:22px 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--blue)}.logo{text-decoration:none;font-size:42px;line-height:1;font-weight:900;letter-spacing:-3px;display:inline-flex;gap:8px}.logo span{font-size:35px;letter-spacing:0}nav{display:flex;gap:40px}nav a{font-size:15px;font-weight:700;text-decoration:none;padding:12px 0;border-bottom:1px solid transparent}nav a:hover{border-color:currentColor}.header-note{font-size:12px;letter-spacing:1px;font-weight:800;line-height:1.4}.hero{background:var(--blue);color:var(--paper);padding:54px 4.5% 66px;display:grid;grid-template-columns:1.12fr 1fr;gap:5%;overflow:hidden}.eyebrow{font-size:12px;letter-spacing:1.4px;font-weight:800;line-height:1.5;margin:0 0 28px;display:flex;align-items:center;gap:10px}.spark{font-size:25px;line-height:1;color:var(--yellow)}h1{font-size:clamp(58px,7.8vw,128px);font-weight:900;letter-spacing:-.07em;line-height:.91;margin:0 0 28px}h1 em{font-style:normal;color:var(--yellow)}.intro{font-size:19px;line-height:1.5;max-width:420px;margin:0 0 30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:54px;padding:15px 23px;border:2px solid var(--ink);font-size:15px;font-weight:800;text-decoration:none;box-shadow:4px 4px 0 var(--ink);transition:transform .18s,box-shadow .18s;cursor:pointer}.button:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.yellow{background:var(--yellow);color:var(--ink)}.small-note{font-size:12px;margin-top:18px;opacity:.85}.hero-art{position:relative;margin:27px 15px 32px 0;min-height:510px}.city-frame{height:100%;min-height:490px;background:var(--pink);padding:13px;transform:rotate(3deg);box-shadow:10px 12px 0 rgba(0,0,0,.13);position:relative}.photo-await{height:100%;min-height:460px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--pink);color:var(--ink)}.photo-await span{font-size:80px;font-weight:900}.photo-await p{font-size:13px;letter-spacing:2px;text-align:center}.city-frame img{height:100%;width:100%;object-fit:cover;display:block;position:absolute;inset:13px;width:calc(100% - 26px);height:calc(100% - 26px)}.postcard-label{position:absolute;top:35px;left:-28px;z-index:2;background:var(--paper);color:var(--ink);padding:14px 19px;font-weight:900;font-size:13px;line-height:1.25;letter-spacing:1px;transform:rotate(-7deg);box-shadow:3px 3px 0 var(--ink)}.round-stamp{position:absolute;right:-29px;bottom:22px;display:grid;place-content:center;width:147px;height:147px;background:var(--yellow);border:2px solid var(--ink);border-radius:50%;color:var(--ink);text-align:center;font-size:22px;font-weight:900;letter-spacing:-1px;line-height:.95;transform:rotate(13deg);box-shadow:4px 4px 0 var(--ink)}.art-caption{position:absolute;bottom:-49px;left:15px;font-size:12px;line-height:1.4;max-width:260px}.ticker{background:var(--yellow);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);overflow:hidden;white-space:nowrap;padding:18px 0;font-size:18px;font-weight:900;letter-spacing:.5px}.ticker div{display:flex;gap:28px;justify-content:center;min-width:max-content}.ticker span{font-size:24px}.challenge{padding:95px 6%}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:8%}h2{font-size:clamp(45px,5.5vw,80px);font-weight:900;letter-spacing:-.065em;line-height:1.02;margin:0}.underline{text-decoration:underline;text-decoration-color:var(--pink);text-decoration-thickness:10px;text-underline-offset:4px}.challenge-intro{font-size:19px;line-height:1.55}.challenge-intro p:first-child{font-size:26px;font-weight:800;margin-top:0}.honest-note{font-size:13px;line-height:1.5;border-left:3px solid var(--blue);padding-left:16px;margin-top:26px}footer{padding:35px 4.5%;display:flex;align-items:center;justify-content:space-between;background:var(--blue);color:var(--paper)}footer p,footer>a:last-child{font-size:13px}footer>a:last-child{text-underline-offset:5px}@media(min-width:1500px){.hero,.site-header,footer{padding-left:max(5%,calc((100vw - 1370px)/2));padding-right:max(5%,calc((100vw - 1370px)/2))}}@media(max-width:850px){.site-header{padding:20px 5%}.header-note{display:none}nav{gap:24px}.hero{gap:4%;padding-top:40px}h1{font-size:8.3vw}.hero-art{min-height:430px}.city-frame{min-height:410px}.photo-await{min-height:385px}.round-stamp{width:115px;height:115px;font-size:18px}.intro{font-size:16px}.section-heading{gap:5%}.challenge-intro{font-size:17px}.challenge{padding:70px 5%}}@media(max-width:600px){.logo{font-size:34px}.logo span{font-size:28px}nav a{font-size:12px}.hero{grid-template-columns:1fr;padding:30px 6% 68px;gap:30px}h1{font-size:clamp(65px,15.5vw,100px);max-width:500px}.eyebrow{font-size:12px;margin-bottom:22px}.intro{font-size:17px;max-width:360px}.hero-art{margin:14px 17px 30px 10px;min-height:420px}.city-frame{min-height:420px}.photo-await{min-height:395px}.round-stamp{width:130px;height:130px;font-size:20px;right:-23px}.art-caption{bottom:-47px}.ticker{font-size:14px;padding:14px 0}.section-heading{grid-template-columns:1fr;gap:30px}h2{font-size:52px}.challenge{padding:65px 6%}.challenge-intro{font-size:17px}.challenge-intro p:first-child{font-size:23px}.header-note{display:none}footer{gap:25px;flex-wrap:wrap;padding:30px 6%}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.principles{background:var(--pink);padding:75px 6%;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.principles-header{display:flex;justify-content:space-between;gap:40px;align-items:flex-start}.principles-header h2{font-size:clamp(40px,4.8vw,70px);width:65%}.handwritten{font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-4px}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:55px;border-top:1px solid var(--ink)}.principle-grid article{padding:28px 26px 25px 0}.principle-grid article:not(:nth-child(3n+1)){border-left:1px solid var(--ink);padding-left:26px}.principle-grid article:nth-child(n+4){border-top:1px solid var(--ink)}.number{font-size:12px;font-weight:700;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;width:30px;height:30px}.principle-grid h3{font-size:25px;line-height:1.1;letter-spacing:-1px;margin:24px 0 14px}.principle-grid p{font-size:16px;line-height:1.6;max-width:310px;margin:0}.play-section{background:var(--yellow);padding:85px 6% 100px;display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:2px solid var(--ink);overflow:hidden}.play-copy h2{font-size:clamp(48px,6.2vw,91px);line-height:.98}.outline-word{font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.07em}.play-intro{font-size:18px;line-height:1.5;max-width:330px;margin:27px 0}.demo-controls{max-width:370px}.switch-row{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:20px 0;margin-bottom:12px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);cursor:pointer;position:relative}.switch-row strong{font-size:16px}.switch-row small{display:block;font-size:13px;margin-top:5px}.switch-row input{position:absolute;right:0;width:59px;height:34px;opacity:0;cursor:pointer;z-index:2}.switch-track{width:59px;height:34px;border-radius:25px;border:2px solid var(--ink);position:relative;flex-shrink:0;background:transparent;transition:background .2s}.switch-track:before{content:'';position:absolute;width:22px;height:22px;background:var(--ink);border-radius:50%;left:4px;top:4px;transition:transform .2s}.switch-row input:checked+.switch-track{background:var(--blue)}.switch-row input:checked+.switch-track:before{background:var(--yellow);transform:translateX(25px)}.switch-row input:focus-visible+.switch-track{outline:3px solid var(--ink);outline-offset:5px}.remix{background:var(--paper);color:var(--ink);width:100%;margin-top:8px}.demo-disclaimer{font-size:12px;line-height:1.6;max-width:355px;margin-top:22px}.poster-wrap{margin-top:25px;position:relative;align-self:center;transform:rotate(3deg)}.poster-top{display:flex;justify-content:space-between;font-size:12px;font-weight:900;letter-spacing:.6px;margin-bottom:13px;gap:10px}.campaign-poster{--poster-bg:var(--blue);--poster-ink:var(--paper);--poster-pop:var(--yellow);background:var(--poster-bg);color:var(--poster-ink);border:2px solid var(--ink);box-shadow:9px 9px 0 var(--ink);padding:28px;position:relative;overflow:hidden;transition:background .2s,color .2s}.campaign-poster[data-palette="pink"]{--poster-bg:var(--pink);--poster-ink:var(--ink);--poster-pop:var(--yellow)}.campaign-poster[data-palette="citrus"]{--poster-bg:#ff743d;--poster-ink:#10204f;--poster-pop:var(--paper)}.poster-eyebrow{font-size:12px;font-weight:800;letter-spacing:.8px;display:block}.poster-star{font-size:100px;line-height:1.2;display:block;color:var(--poster-pop);margin:8px 0}.campaign-poster h3{font-size:clamp(38px,4.1vw,64px);line-height:.98;letter-spacing:-.06em;margin:0 0 22px;min-height:2em;font-weight:900}.campaign-poster p{font-size:15px;line-height:1.5;max-width:315px;min-height:4.5em}.poster-action{border:0;width:100%;padding:18px;font-size:15px;font-weight:800;display:flex;justify-content:space-between;gap:10px;background:var(--poster-pop);color:var(--ink);cursor:pointer;min-height:54px;margin-top:27px}.poster-action:hover{filter:brightness(.93)}.campaign-poster .cheer-count{font-size:12px;margin:14px 0 0;min-height:3em;max-width:none;text-align:center}.poster-scribble{display:block;font-family:Georgia,serif;font-style:italic;text-align:center;font-size:24px;margin-top:30px;transform:rotate(-6deg)}.city-section{padding:90px 6%;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.city-detail{margin:0;position:relative}.city-detail img{width:100%;height:580px;object-fit:cover;display:block;border-radius:240px 240px 0 0;border:2px solid var(--ink)}.city-detail figcaption{display:flex;justify-content:space-between;font-size:12px;font-weight:800;letter-spacing:1px;padding-top:15px}.city-section h2{font-size:clamp(52px,6.5vw,95px)}.city-section h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}.city-section p:not(.eyebrow):not(.arabic-word){font-size:18px;line-height:1.6;max-width:420px}.arabic-word{font-size:70px;color:var(--blue);margin:20px 0 0;text-align:left;font-weight:800}.challenge-board{padding:80px 6%;background:var(--orange);border-top:2px solid var(--ink);color:#10204f}.board-heading{display:flex;justify-content:space-between;gap:25px;align-items:center}.board-heading h2{font-size:clamp(45px,6vw,85px)}.board-heading h2 em{font-family:Georgia,serif;font-weight:400}.build-stamp{border:2px solid currentColor;padding:16px;text-align:center;transform:rotate(10deg);font-weight:900;font-size:16px;line-height:1.2}.goals{margin:50px 0 55px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid currentColor;border-bottom:1px solid currentColor}.goals>div{padding:30px 24px 30px 0}.goals>div+div{border-left:1px solid currentColor;padding-left:24px}.goal-value{font-size:clamp(30px,3.8vw,54px);font-weight:900;letter-spacing:-2px}.goals h3{font-size:21px;margin:4px 0 22px;letter-spacing:-.5px}.goals p{font-size:16px;line-height:1.5;min-height:4.5em}.goal-tag{font-size:12px;letter-spacing:.7px;font-weight:800}.closing-line{font-size:clamp(25px,3.2vw,45px);line-height:1.1;letter-spacing:-1px;font-weight:900}.closing-line span{font-family:Georgia,serif;font-weight:400;font-style:italic}.credits{background:var(--blue);color:var(--paper);padding:0 4.5% 28px;font-size:12px;line-height:1.6;border-top:1px solid rgba(255,255,255,.2)}.credits p{max-width:900px}.credits summary{cursor:pointer;min-height:30px;padding:5px 0}.credits a{text-underline-offset:3px}.confetti{position:absolute;width:8px;height:15px;pointer-events:none;z-index:10;background:var(--yellow);animation:cheer 900ms ease-out forwards}@keyframes cheer{from{transform:translate(0,0) rotate(0);opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(260deg);opacity:0}}@media(max-width:850px){.principles-header{display:block}.principles-header h2{width:auto}.principle-grid{grid-template-columns:repeat(2,1fr)}.principle-grid article:not(:nth-child(3n+1)){border-left:0;padding-left:0}.principle-grid article:nth-child(even){border-left:1px solid var(--ink);padding-left:24px}.principle-grid article:nth-child(n+3){border-top:1px solid var(--ink)}.play-section{gap:5%}.campaign-poster{padding:22px}.campaign-poster h3{font-size:40px}.city-detail img{height:490px}.city-section{gap:6%}.goals p{min-height:6em}}@media(max-width:600px){.principles{padding:55px 6%}.principles-header h2{font-size:43px}.principle-grid{grid-template-columns:1fr;margin-top:30px}.principle-grid article,.principle-grid article:not(:nth-child(3n+1)),.principle-grid article:nth-child(even){padding:24px 0;border-left:0;border-bottom:1px solid var(--ink);border-top:0}.principle-grid h3{margin:15px 0 10px}.principle-grid p{max-width:none}.play-section{padding:60px 6% 75px;grid-template-columns:1fr;gap:28px}.play-copy h2{font-size:64px}.poster-wrap{margin:20px 9px 0 2px}.campaign-poster{padding:26px}.campaign-poster h3{font-size:54px}.city-section{padding:65px 6%;grid-template-columns:1fr;gap:45px}.city-detail img{height:390px;border-radius:200px 200px 0 0}.city-section h2{font-size:64px}.arabic-word{font-size:60px}.challenge-board{padding:60px 6%}.board-heading h2{font-size:49px}.build-stamp{display:none}.goals{grid-template-columns:1fr;margin:30px 0}.goals>div,.goals>div+div{border-left:0;border-bottom:1px solid currentColor;padding:24px 0}.goals>div:last-child{border-bottom:0}.goal-value{font-size:45px}.goals h3{margin-bottom:12px}.goals p{min-height:0;max-width:300px}.goal-tag{display:block;margin-top:18px}.closing-line{font-size:34px;max-width:300px;line-height:1.15}.credits{padding:0 6% 30px}}
