/* Smart Citizens — Community Event 27 Oct 2026 (added 2026-10-06). Colours match the event flyer. */
@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&display=swap');
.scf-event,.scf-ev-pill{--ev-blue:#1C7FA8;--ev-blue-d:#0F5F80;--ev-green:#3E8E2B;--ev-green-d:#2D6B1E;--ev-yellow:#F7C530;--ev-pink:#E8447A;--ev-pink-d:#C92F63;--ev-sky:#E4F3FB;--ev-mint:#EAF6E3;--ev-cream:#FFF7DE;--ev-ink:#16384A;--ev-line:#CFE6F1}
.scf-event{position:relative;overflow:hidden;padding:120px 0 110px;background:
  radial-gradient(900px 420px at 88% 4%,rgba(247,197,48,.30),transparent 60%),
  radial-gradient(760px 420px at 0% 100%,rgba(62,142,43,.16),transparent 60%),
  radial-gradient(600px 340px at 40% 30%,rgba(28,127,168,.10),transparent 60%),
  linear-gradient(180deg,var(--ev-sky),#F6FBF2)}
.scf-event .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}

/* bunting */
.scf-bunting{position:absolute;left:0;right:0;top:0;height:70px;pointer-events:none;z-index:0}
.scf-bunting svg{width:100%;height:100%;display:block}
.scf-bunting .flag{transform-box:fill-box;transform-origin:50% 0;animation:scf-sway 4.5s ease-in-out infinite}
.scf-bunting .flag:nth-child(2n){animation-delay:-1.4s}
.scf-bunting .flag:nth-child(3n){animation-delay:-2.6s}
@keyframes scf-sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}

.scf-event h2{font-family:Fredoka,'Baloo 2',system-ui,sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(44px,6vw,76px);line-height:.95;color:var(--ev-blue);margin:14px 0 18px;letter-spacing:.01em}
.scf-event h2{position:relative;isolation:isolate}
.scf-event h2 em{display:inline-block;font-style:normal;color:var(--ev-green);position:relative;padding:0 .12em}
.scf-event h2 em::before{content:"";position:absolute;left:-.05em;right:-.05em;top:.3em;bottom:.02em;background:var(--ev-mint);border-radius:.3em;transform:rotate(-1.5deg);z-index:-1}
.scf-event .lead{font-size:18px;line-height:1.7;color:#3D5A68;max-width:520px;margin:0 0 28px}
.scf-ev-free{display:inline-flex;align-items:center;gap:8px;background:var(--ev-pink);color:#fff;font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:13px;padding:7px 14px;border-radius:999px;box-shadow:0 10px 24px -12px rgba(232,68,122,.75)}

.scf-ev-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 26px}
.scf-ev-tile{background:#fff;border:1px solid var(--ev-line);border-radius:18px;padding:16px 14px;display:flex;gap:12px;align-items:flex-start;box-shadow:0 14px 30px -24px rgba(15,95,128,.55)}
.scf-ev-tile:nth-child(1){background:var(--ev-sky)}.scf-ev-tile:nth-child(2){background:var(--ev-mint)}.scf-ev-tile:nth-child(3){background:var(--ev-sky)}
.scf-ev-ico{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--ev-blue);color:#fff}
.scf-ev-tile:nth-child(2) .scf-ev-ico{background:var(--ev-green)}
.scf-ev-tile small{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5B7886;margin-bottom:3px}
.scf-ev-tile b{display:block;font-family:Fredoka,system-ui,sans-serif;font-weight:600;font-size:16px;line-height:1.25;color:var(--ev-ink)}

.scf-countdown{display:flex;gap:10px;margin:0 0 28px}
.scf-countdown div{min-width:72px;text-align:center;background:var(--ev-blue);color:#fff;border-radius:16px;padding:12px 8px 10px;box-shadow:0 16px 30px -20px rgba(15,95,128,.85)}
.scf-countdown div:nth-child(2){background:var(--ev-green)}.scf-countdown div:nth-child(3){background:var(--ev-pink)}.scf-countdown div:nth-child(4){background:var(--ev-yellow);color:var(--ev-ink)}
.scf-countdown b{display:block;font-family:Fredoka,system-ui,sans-serif;font-weight:700;font-size:30px;line-height:1;font-variant-numeric:tabular-nums}
.scf-countdown span{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.8;margin-top:6px}
.scf-countdown.live{font-weight:800;color:var(--ev-pink);font-size:18px}
.scf-event .btn-henna{background:var(--ev-green);color:#fff;box-shadow:0 14px 28px -14px rgba(62,142,43,.8)}
.scf-event .btn-henna:hover{background:var(--ev-green-d)}
.scf-event .btn-ghost{border-color:var(--ev-blue);color:var(--ev-blue)}
.scf-event .btn-ghost:hover{background:var(--ev-blue);color:#fff}
.scf-ev-ctas{display:flex;flex-wrap:wrap;gap:12px}

/* right column cards */
.scf-ev-cards{position:relative;display:grid;gap:18px;perspective:1300px}
.scf-ev-card{position:relative;background:var(--ev-cream);border:1px solid #F3E2A6;border-radius:26px;padding:26px 26px 22px;box-shadow:0 30px 60px -36px rgba(15,95,128,.55);overflow:hidden}
.scf-ev-card.kids{background:#FDEAF1;border-color:#F6C6D7}
.scf-ev-card::before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:linear-gradient(90deg,var(--ev-yellow),var(--ev-green))}
.scf-ev-card.kids::before{background:linear-gradient(90deg,var(--ev-pink),var(--ev-yellow),var(--ev-blue))}
.scf-ev-card h3{font-family:Fredoka,system-ui,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:23px;color:var(--ev-ink);margin:4px 0 6px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.scf-ev-price{display:inline-block;background:var(--ev-green);color:#fff;font-family:Fredoka,system-ui,sans-serif;font-weight:700;font-size:20px;padding:4px 14px;border-radius:12px}
.scf-ev-card p.sub{margin:0 0 16px;color:#4B6370;font-size:15px}
.scf-ev-card p.sub a{color:var(--ev-blue);font-weight:700}
.scf-ev-chips{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.scf-ev-card.kids .scf-ev-chips{grid-template-columns:repeat(3,1fr)}
.scf-ev-card.stalls h3,.scf-ev-card.stalls .sub{padding-right:92px}
.scf-ev-chip{text-align:center;font-size:13px;font-weight:700;color:var(--ev-ink)}
.scf-ev-chip i{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 8px;border-radius:50%;background:#fff;border:2px solid #fff;box-shadow:0 8px 18px -10px rgba(15,95,128,.5);transition:transform .5s cubic-bezier(.16,1,.3,1),background .3s}
.scf-ev-chip:hover i{transform:translateY(-4px) rotate(-6deg);background:var(--ev-sky)}
.scf-ev-sticker{position:absolute;right:-14px;top:-22px;z-index:3;width:108px;height:108px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--ev-pink);color:#fff;font-family:Fredoka,system-ui,sans-serif;font-weight:700;text-transform:uppercase;font-size:18px;line-height:1.05;box-shadow:0 20px 40px -18px rgba(232,68,122,.85);animation:scf-spin-slow 16s linear infinite}
.scf-ev-sticker::before{content:"";position:absolute;inset:6px;border-radius:50%;border:2px dashed rgba(255,255,255,.55)}
.scf-ev-sticker span{animation:scf-spin-slow 16s linear infinite reverse}
@keyframes scf-spin-slow{to{transform:rotate(360deg)}}

/* hero announcement pill */
.scf-ev-pill{display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;padding:7px 14px 7px 8px;border-radius:999px;background:linear-gradient(90deg,var(--ev-sky),#fff);border:1px solid rgba(28,127,168,.35);color:var(--ev-ink);font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 10px 24px -16px rgba(28,127,168,.8);transition:translate .4s cubic-bezier(.16,1,.3,1)}
.scf-ev-pill:hover{translate:0 -2px}
.scf-ev-pill em{font-style:normal;background:var(--ev-pink);color:#fff;border-radius:999px;padding:3px 10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}

@media (max-width:1024px){.scf-event .wrap{grid-template-columns:1fr;gap:56px}.scf-ev-sticker{right:6px}}
@media (max-width:760px){
  .scf-event{padding:96px 0 72px}
  .scf-ev-meta{grid-template-columns:1fr;gap:10px}
  .scf-countdown div{min-width:0;flex:1}
  .scf-countdown b{font-size:24px}
  .scf-ev-ctas .btn{flex:1 1 100%;text-align:center}
  .scf-ev-card{padding:24px 18px 20px}
  .scf-ev-card.stalls .scf-ev-chips{grid-template-columns:repeat(2,1fr)!important;gap:14px}
  .scf-ev-card.kids .scf-ev-chips{grid-template-columns:repeat(3,1fr)!important;gap:8px}
  .scf-ev-chip{font-size:12px}
  .scf-ev-chip i{width:54px;height:54px}
  .scf-ev-card.stalls h3,.scf-ev-card.stalls .sub{padding-right:74px}
  .scf-ev-sticker{width:88px;height:88px;font-size:16px;top:-30px;right:4px}
  .scf-ev-pill{font-size:13px}
  .scf-bunting{height:52px}
}
@media (prefers-reduced-motion:reduce){.scf-bunting .flag,.scf-ev-sticker,.scf-ev-sticker span{animation:none}}

/* photos */
.scf-ev-photo{position:relative;overflow:hidden;background:#dbeef6}
.scf-ev-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.scf-ev-card .scf-ev-photo{margin:-26px -26px 18px;height:170px}
.scf-ev-card .scf-ev-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,95,128,0) 45%,rgba(15,95,128,.35))}
.scf-ev-card:hover .scf-ev-photo img{transform:scale(1.06)}
.scf-ev-card::before{z-index:2}
.scf-ev-collage{position:relative;height:230px;margin-top:34px;max-width:520px}
.scf-ev-collage .scf-ev-photo{position:absolute;border-radius:20px;border:5px solid #fff;box-shadow:0 24px 44px -24px rgba(15,95,128,.6)}
.scf-ev-collage .c1{left:0;top:18px;width:46%;height:190px;rotate:-4deg;z-index:1}
.scf-ev-collage .c2{left:30%;top:0;width:44%;height:210px;rotate:3deg;z-index:2;border-color:var(--ev-yellow)}
.scf-ev-collage .c3{right:0;top:34px;width:38%;height:170px;rotate:-2deg;z-index:1}
.scf-ev-collage .scf-ev-photo:hover{z-index:3;rotate:0deg;scale:1.04;transition:rotate .5s,scale .5s}
@media (max-width:760px){
  .scf-ev-card .scf-ev-photo{margin:-24px -18px 16px;height:150px}
  .scf-ev-collage{height:170px;margin-top:26px}
  .scf-ev-collage .c1{height:140px}.scf-ev-collage .c2{height:160px}.scf-ev-collage .c3{height:128px}
}
.scf-ev-card .scf-ev-photo img{object-position:50% 45%}
.scf-ev-card.kids .scf-ev-photo img{object-position:50% 30%}
.scf-ev-collage .scf-ev-photo img{object-position:50% 30%}

/* flyer */
.scf-ev-flyer{display:block;position:relative;margin:34px 0 0;padding:0;border:6px solid #fff;border-radius:22px;overflow:hidden;width:min(100%,340px);cursor:zoom-in;background:#fff;rotate:-3deg;box-shadow:0 30px 60px -30px rgba(15,95,128,.65);transition:rotate .6s cubic-bezier(.16,1,.3,1),translate .6s cubic-bezier(.16,1,.3,1),box-shadow .6s}
.scf-ev-flyer:hover,.scf-ev-flyer:focus-visible{rotate:0deg;translate:0 -6px;box-shadow:0 40px 70px -30px rgba(15,95,128,.75)}
.scf-ev-flyer:focus-visible{outline:3px solid var(--ev-yellow);outline-offset:4px}
.scf-ev-flyer img{display:block;width:100%;height:auto}
.scf-ev-flyer span{position:absolute;right:10px;bottom:10px;background:var(--ev-blue);color:#fff;font-weight:700;font-size:13px;padding:6px 12px;border-radius:999px;box-shadow:0 8px 18px -8px rgba(0,0,0,.4)}
.scf-ev-lightbox{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px;background:rgba(10,30,40,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:scf-lb-in .3s ease}
.scf-ev-lightbox img{max-width:min(92vw,620px);max-height:90vh;border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,.5)}
.scf-ev-lightbox button{position:absolute;top:16px;right:16px;width:46px;height:46px;border-radius:50%;border:0;background:#fff;color:var(--ev-ink,#16384A);font-size:28px;line-height:1;cursor:pointer}
@keyframes scf-lb-in{from{opacity:0}to{opacity:1}}
@media (max-width:1024px){.scf-ev-flyer{margin-left:auto;margin-right:auto}}
@media (max-width:760px){.scf-ev-flyer{width:min(100%,300px);rotate:-2deg}}
