/* Kickoff — Sports for Kids Timmins */

@font-face{font-family:"Bowlby One";src:url(../fonts/bowlby-one.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Gochi Hand";src:url(../fonts/gochi-hand.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Lexend";src:url(../fonts/lexend.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}

:root{
  --navy:#143A66; --blue:#2E64A0; --sky:#4BACD6; --sky-50:#E6F5FC;
  --sun:#FFC93C; --coral:#FF5F45; --grass:#2FA85E; --grass-d:#23894B;
  --chalk:#FFFCF4; --ink:#13243B; --muted:#4D5E74; --line:#DCE6F0;
  --display:"Bowlby One", "Arial Black", sans-serif;
  --body:"Lexend", "Segoe UI", sans-serif;
  --hand:"Gochi Hand", "Comic Sans MS", cursive;
  --r:18px; --wrap:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--chalk);color:var(--ink);font:400 17px/1.65 var(--body);overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--blue);text-decoration-thickness:2px;text-underline-offset:3px}
a:hover{color:var(--coral)}
:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;left:12px;top:12px;z-index:100000;background:var(--sun);color:var(--navy);padding:8px 14px;border-radius:8px;font-weight:600}

/* ---------- Top strip ---------- */
.topbar{background:var(--navy);color:#fff;font-size:14px}
.topbar .wrap{display:flex;gap:22px;align-items:center;justify-content:space-between;min-height:40px;flex-wrap:wrap}
.topbar a{color:#fff;text-decoration:none}.topbar a:hover{color:var(--sun)}
.topbar .items{display:flex;gap:22px;flex-wrap:wrap}
.topbar svg{width:15px;height:15px;vertical-align:-2px;margin-right:6px;fill:none;stroke:var(--sun);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.topbar .hand{font-family:var(--hand);font-size:18px;color:var(--sun)}

/* ---------- Header ---------- */
.site-header{background:var(--sky);position:relative;z-index:20}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:14px;padding-bottom:14px}
.brand{flex:none}
.brand img{display:block;width:210px;height:auto}
.brand .custom-logo-link{display:block;margin:-6px 0}
.brand .site-title{font:28px/1 var(--display);color:#fff;text-decoration:none;text-shadow:0 3px 0 var(--navy)}
.nav ul{list-style:none;margin:0;padding:0}
.nav>ul,.nav .menu{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.nav li{position:relative}
.nav a{display:block;font:13.5px/1 var(--display);text-transform:uppercase;letter-spacing:.01em;color:var(--navy);text-decoration:none;padding:10px 12px;border-radius:999px;transition:transform .2s cubic-bezier(.3,1.6,.5,1),background .2s}
.nav a:hover{background:#fff;color:var(--navy);transform:translateY(-3px) rotate(-2deg)}
.nav .current-menu-item>a,.nav .current_page_item>a,.nav .current-menu-ancestor>a{background:var(--sun);box-shadow:0 3px 0 var(--navy)}
.nav .sub-menu,.nav .children{position:absolute;left:0;top:100%;min-width:220px;background:#fff;border:3px solid var(--navy);border-radius:16px;padding:8px;box-shadow:0 6px 0 var(--navy);display:none;z-index:30}
.nav li:hover>.sub-menu,.nav li:focus-within>.sub-menu,.nav li:hover>.children,.nav li:focus-within>.children{display:block}
.nav .sub-menu a,.nav .children a{font-family:var(--body);font-weight:600;font-size:15px;text-transform:none;border-radius:10px}
.nav .sub-menu a:hover,.nav .children a:hover{background:var(--sky-50);transform:none}
.menu-toggle{display:none}

/* ---------- Hero ---------- */
.hero{background:var(--sky);position:relative;padding:28px 0 150px;overflow:hidden;color:#fff}
.hero::after{content:"";position:absolute;left:-5%;right:-5%;bottom:-2px;height:90px;background:var(--chalk);border-radius:50% 50% 0 0/100% 100% 0 0}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center}
.hero .wrap>*{min-width:0}
.kicker{display:inline-block;font:22px var(--hand);color:var(--navy);background:var(--sun);padding:2px 16px 4px;border-radius:999px;transform:rotate(-3deg);box-shadow:0 3px 0 var(--navy)}
.hero .hero-title{font:clamp(38px,6vw,76px)/.98 var(--display);margin:18px 0 26px;color:#fff;text-shadow:0 5px 0 var(--navy);letter-spacing:-.01em;position:relative;z-index:0}
.hero .hero-title em{font-style:normal;color:var(--sun);position:relative;white-space:nowrap}
.hero .hero-title em svg{position:absolute;left:-2%;bottom:-4px;width:104%;height:16px;z-index:-1}
.hero p{font-size:19px;max-width:34ch;margin:0 0 26px;color:var(--navy);font-weight:500}
.btns{display:flex;gap:12px;flex-wrap:wrap}
.btn svg{flex:none}
.btn{display:inline-flex;align-items:center;gap:9px;font:15px/1 var(--display);text-transform:uppercase;text-decoration:none;padding:15px 19px;white-space:nowrap;border-radius:999px;border:3px solid var(--navy);box-shadow:0 5px 0 var(--navy);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(3px);box-shadow:0 2px 0 var(--navy)}
.btn-sun{background:var(--sun);color:var(--navy)}.btn-sun:hover{color:var(--navy)}
.btn-white{background:#fff;color:var(--navy)}.btn-white:hover{color:var(--navy)}
.btn-coral{background:var(--coral);color:#fff}.btn-coral:hover{color:#fff}
.btn-coral svg{fill:var(--sun);stroke:var(--navy);stroke-width:2}
.btn svg{width:20px;height:20px}

.playfield{position:relative;aspect-ratio:1/1;max-width:470px;justify-self:center;width:100%}
.playfield .court{position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle at 50% 50%,#5BBCE3 0 38%,transparent 38.5%),var(--blue);box-shadow:inset 0 0 0 6px rgba(255,255,255,.55),0 10px 0 var(--navy)}
.playfield .court::before{content:"";position:absolute;inset:30%;border:5px dashed rgba(255,255,255,.6);border-radius:50%}
.playfield .court::after{content:"";position:absolute;left:50%;top:6%;bottom:6%;border-left:5px solid rgba(255,255,255,.55)}
.ball{position:absolute;filter:drop-shadow(0 6px 0 rgba(20,58,102,.35))}
.ball svg{display:block;width:100%;height:100%}
.b-soccer{width:30%;left:35%;top:33%;animation:kick-bounce 2.4s cubic-bezier(.5,0,.5,1) infinite}
.b-basket{width:23%;left:4%;top:8%;animation:kick-float 4s ease-in-out infinite}
.b-base{width:16%;right:6%;top:12%;animation:kick-float 3.4s ease-in-out .6s infinite}
.b-puck{width:34%;right:0;bottom:6%;animation:kick-float 3.8s ease-in-out 1.1s infinite}
.b-ribbon{position:absolute;left:-4%;bottom:10%;font:26px var(--hand);color:var(--navy);background:#fff;padding:6px 18px 8px;border:3px solid var(--navy);border-radius:14px;transform:rotate(-6deg);box-shadow:0 4px 0 var(--navy)}
.spark{position:absolute;width:26px;height:26px;color:var(--sun);animation:kick-twinkle 2.2s ease-in-out infinite}
@keyframes kick-bounce{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-34%) rotate(180deg)}}
@keyframes kick-float{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-12px) rotate(6deg)}}
@keyframes kick-twinkle{0%,100%{transform:scale(.6) rotate(0);opacity:.5}50%{transform:scale(1.1) rotate(45deg);opacity:1}}

.rise{opacity:0;transform:translateY(18px);animation:kick-rise .7s cubic-bezier(.2,.8,.2,1) forwards}
.d1{animation-delay:.05s}.d2{animation-delay:.15s}.d3{animation-delay:.25s}.d4{animation-delay:.35s}.d5{animation-delay:.5s}
@keyframes kick-rise{to{opacity:1;transform:none}}

/* ---------- Page header (inner pages) ---------- */
.page-hero{background:var(--sky);position:relative;padding:30px 0 72px;overflow:hidden}
.page-hero::after{content:"";position:absolute;left:-5%;right:-5%;bottom:-2px;height:56px;background:var(--chalk);border-radius:50% 50% 0 0/100% 100% 0 0}
.page-hero .wrap{position:relative;z-index:2}
.page-hero h1{font:clamp(32px,5vw,58px)/1.02 var(--display);margin:8px 0 0;color:#fff;text-shadow:0 4px 0 var(--navy)}
.page-hero .kicker{font-size:19px}
.page-hero .meta{margin-top:10px;color:var(--navy);font-weight:500}
.page-hero .doodle{position:absolute;right:4%;top:18px;width:120px;height:120px;opacity:.9;animation:kick-float 4s ease-in-out infinite}
.page-hero+.site-main{padding-top:20px}

/* ---------- Quick tiles ---------- */
.tiles{position:relative;z-index:3;margin-top:-110px}
.hero+.site-main{padding-top:24px}
.hero:has(+.site-main){padding-bottom:72px}
.tiles ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tile{display:flex;flex-direction:column;gap:6px;height:100%;background:#fff;border:3px solid var(--navy);border-radius:var(--r);padding:20px 20px 18px;text-decoration:none;color:var(--ink);box-shadow:0 6px 0 var(--navy);transition:transform .2s cubic-bezier(.3,1.6,.5,1)}
.tile:hover{transform:translateY(-6px) rotate(-1deg);color:var(--ink)}
.tile .ico{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;margin-bottom:4px}
.tile .ico svg{width:30px;height:30px}
.tile b{font:20px/1.1 var(--display);color:var(--navy);text-transform:uppercase;font-weight:400}
.tile span{font-size:15px;color:var(--muted)}
.t1 .ico{background:var(--sun)}.t2 .ico{background:#FFD7CF}.t3 .ico{background:#CDEFD9}.t4 .ico{background:var(--sky-50)}

/* ---------- Main layout ---------- */
.site-main{padding:56px 0 80px}
.site-main>.wrap{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:40px;align-items:start}
.no-sidebar .site-main>.wrap{grid-template-columns:minmax(0,1fr)}
.content-area{min-width:0}
.entry{background:#fff;border:3px solid var(--navy);border-radius:28px;padding:44px 52px;position:relative;box-shadow:0 8px 0 var(--navy);margin-bottom:40px}
.entry::before{content:"";position:absolute;top:-16px;left:50%;width:110px;height:30px;margin-left:-55px;background:rgba(255,201,60,.85);transform:rotate(-2deg);border-radius:4px}
.entry-thumb{margin:-44px -52px 30px;border-radius:25px 25px 0 0;overflow:hidden}
.entry-thumb img{display:block;width:100%}

/* Post lists */
.post-card .entry-title{font:28px/1.15 var(--display);margin:0 0 8px}
.post-card .entry-title a{color:var(--navy);text-decoration:none}
.post-card .entry-title a:hover{color:var(--coral)}
.entry-meta{font-size:14px;color:var(--muted);margin-bottom:16px}
.more-link,.read-more{display:inline-block;margin-top:6px;font:14px/1 var(--display);text-transform:uppercase;color:var(--navy);background:var(--sun);padding:11px 16px;border-radius:999px;border:2px solid var(--navy);box-shadow:0 3px 0 var(--navy);text-decoration:none}
.read-more:hover{color:var(--navy);transform:translateY(2px);box-shadow:0 1px 0 var(--navy)}
.pagination,.nav-links{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.page-numbers{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border:2px solid var(--navy);border-radius:999px;background:#fff;color:var(--navy);text-decoration:none;font-weight:600}
.page-numbers.current{background:var(--sun)}
.post-navigation .nav-links{justify-content:space-between}
.post-navigation a{font-weight:600;text-decoration:none}

/* ---------- WordPress block content ---------- */
.entry-content{overflow-wrap:anywhere}
.entry-content>*{margin-top:0;margin-bottom:1.1em}
.entry-content>*:last-child{margin-bottom:0}
.entry-content p strong,.entry-content li strong{font-weight:600}
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6{font-family:var(--display);font-weight:400;color:var(--navy);line-height:1.12;margin-top:1.4em;margin-bottom:.5em}
.entry-content h1 strong,.entry-content h2 strong,.entry-content h3 strong,.entry-content h4 strong{font-weight:400}
.entry-content h1{font-size:clamp(28px,3.4vw,40px)}
.entry-content h2{font-size:clamp(22px,2.6vw,29px)}
.entry-content h3{font-size:24px}
.entry-content h4{font-size:20px}
.entry-content h5,.entry-content h6{font-size:17px;text-transform:uppercase}
.entry-content>:first-child{margin-top:0}
.entry-content .has-text-align-center{text-align:center}
.entry-content .has-text-align-right{text-align:right}
.home .entry-content>h1:first-of-type{margin-top:.4em}
.home .entry-content>h1:first-of-type strong{background:linear-gradient(transparent 62%,var(--sun) 62% 90%,transparent 90%);padding:0 4px}
.entry-content .has-small-font-size{font-size:14px}
.entry-content .has-medium-font-size{font-size:18px}
.entry-content .has-large-font-size{font-size:20px;line-height:1.5}
.entry-content .has-larger-font-size,.entry-content .has-x-large-font-size{font-size:26px;line-height:1.3}
.entry-content ul,.entry-content ol{padding-left:1.4em}
.entry-content li{margin-bottom:.35em}
.entry-content ul li::marker{color:var(--coral)}
.entry-content ol li::marker{color:var(--blue);font-weight:700}

/* images */
.entry-content .wp-block-image{text-align:center}
.entry-content .wp-block-image img,.entry-content .wp-block-gallery img{border-radius:16px}
.home .entry-content>.wp-block-image:first-child img{border:3px solid var(--navy)}
.entry-content figcaption,.wp-element-caption{font-size:14px;color:var(--muted);text-align:center;margin-top:6px}
.alignleft{float:left;margin:.3em 1.4em 1em 0}
.alignright{float:right;margin:.3em 0 1em 1.4em}
.aligncenter{margin-left:auto;margin-right:auto;text-align:center}
.wp-block-image .alignleft,.wp-block-image .alignright{float:none;display:inline-block}
.entry-content::after{content:"";display:table;clear:both}

/* callouts */
.entry-content .is-style-xl-text{font-size:22px;line-height:1.35;background:var(--navy);color:#fff;padding:18px 22px 18px 76px;border-radius:16px;position:relative}
.entry-content .is-style-xl-text span span span{color:var(--sun)}
.entry-content .is-style-xl-text::before{content:"";position:absolute;left:20px;top:50%;width:38px;height:38px;margin-top:-19px;border:4px solid var(--sun);border-radius:50%;background:conic-gradient(from 0deg,transparent 0 75%,rgba(255,201,60,.35) 75% 100%)}
.entry-content .is-style-small-text{font-family:var(--body);font-weight:600;font-size:17px;color:var(--coral)}
.entry-content blockquote,.entry-content .wp-block-quote{margin-left:0;margin-right:0;background:var(--sky-50);border-left:6px solid var(--sky);border-radius:0 16px 16px 0;padding:18px 24px;font-size:19px}
.entry-content .wp-block-pullquote{border-top:4px solid var(--navy);border-bottom:4px solid var(--navy);text-align:center;padding:24px 0}
.entry-content pre,.entry-content code{background:var(--sky-50);border-radius:8px;padding:2px 6px;font-size:.9em}
.entry-content pre{padding:16px;overflow:auto}

/* video & embeds */
.entry-content .wp-block-embed{margin:1.5em 0}
.entry-content .wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper,.entry-content .wp-block-embed.is-type-video .wp-block-embed__wrapper{position:relative;aspect-ratio:16/9;border:4px solid var(--navy);border-radius:20px;overflow:hidden;box-shadow:8px 8px 0 var(--sky);background:var(--navy)}
.entry-content .wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper::before{display:none}
.entry-content .wp-block-embed.wp-has-aspect-ratio iframe,.entry-content .wp-block-embed.is-type-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.entry-content iframe{max-width:100%}

/* tables = scoreboard */
.entry-content .wp-block-table{margin:1.6em 0;padding:10px;background:var(--navy);border-radius:20px;box-shadow:0 6px 0 #0b2442;overflow-x:auto}
.entry-content .wp-block-table table{width:100%;border-collapse:separate;border-spacing:8px}
.entry-content .wp-block-table .has-fixed-layout{table-layout:fixed}
.entry-content .wp-block-table td,.entry-content .wp-block-table th{text-align:center;border-radius:12px;padding:12px 6px;border:0}
.entry-content .wp-block-table thead th,.entry-content .wp-block-table tr:first-child td{background:#21508a;color:#fff;font-size:14px;text-transform:uppercase;letter-spacing:.06em}
.entry-content .wp-block-table tr:first-child td strong:first-child{display:block;font:30px/1 var(--display);color:var(--sun);letter-spacing:0}
.entry-content .wp-block-table tbody tr+tr td,.entry-content .wp-block-table thead+tbody tr td{background:#0b2442;color:var(--sun);font:clamp(17px,2vw,24px)/1.2 var(--display);letter-spacing:.03em;text-shadow:0 0 12px rgba(255,201,60,.45)}
.entry-content .wp-block-table td strong{font-weight:inherit}
.entry-content .wp-block-table figcaption{color:#cfe3f5}
.entry-content table:not(.wp-block-table table){width:100%;border-collapse:collapse}
.entry-content table:not(.wp-block-table table) td,.entry-content table:not(.wp-block-table table) th{border:1px solid var(--line);padding:8px 10px}

/* file blocks = ticket stubs */
.entry-content .wp-block-file{display:flex;align-items:center;gap:14px;background:var(--sky-50);border:2px dashed var(--sky);border-radius:14px;padding:12px 12px 12px 62px;position:relative;margin-bottom:.8em}
.entry-content .wp-block-file::before{content:"PDF";position:absolute;left:12px;top:50%;width:38px;height:44px;margin-top:-22px;background:#fff;border:2px solid var(--navy);border-radius:6px 14px 6px 6px;font:11px/40px var(--display);text-align:center;color:var(--coral)}
.entry-content .wp-block-file:not(:has(a[href$=".pdf" i]))::before{content:"FILE";color:var(--blue)}
.entry-content .wp-block-file a:not(.wp-block-file__button){flex:1;color:var(--navy);text-decoration:none;font-weight:600;font-size:16px;line-height:1.3}
.entry-content .wp-block-file a:not(.wp-block-file__button):hover{color:var(--coral)}
.entry-content .wp-block-file__button{flex:none;background:var(--coral);color:#fff;text-decoration:none;font:13px/1 var(--display);text-transform:uppercase;padding:11px 16px;border-radius:999px;border:2px solid var(--navy);box-shadow:0 3px 0 var(--navy);transition:transform .15s,box-shadow .15s}
.entry-content .wp-block-file__button br{display:none}
.entry-content .wp-block-file__button:hover{color:#fff;transform:translateY(2px);box-shadow:0 1px 0 var(--navy)}
.entry-content .wp-block-file__embed{display:none}

/* buttons */
.wp-block-button__link,.wp-element-button:not(.wp-block-file__button){display:inline-block;background:var(--sun);color:var(--navy);font:15px/1 var(--display);text-transform:uppercase;padding:15px 22px;border-radius:999px;border:3px solid var(--navy);box-shadow:0 4px 0 var(--navy);text-decoration:none}
.wp-block-button__link:hover,.wp-element-button:not(.wp-block-file__button):hover{color:var(--navy);transform:translateY(2px);box-shadow:0 2px 0 var(--navy)}
.is-style-outline .wp-block-button__link{background:#fff}

/* separator = field line */
.entry-content hr,.entry-content hr.wp-block-separator{border:0;height:34px;margin:2.2em 0;opacity:1;background:
  radial-gradient(circle at 50% 50%,transparent 0 11px,var(--grass) 11px 14px,transparent 14px) center/34px 34px no-repeat,
  linear-gradient(var(--grass),var(--grass)) center/100% 3px no-repeat}

/* columns & groups */
.entry-content .wp-block-columns{gap:28px}
.entry-content .wp-block-group.has-background{border-radius:20px;padding:24px}

/* ---------- Sidebar & widgets ---------- */
.sidebar{min-width:0;display:grid;gap:28px}
.widget{background:var(--navy);color:#fff;border-radius:28px;padding:30px 26px 26px;position:relative;overflow:hidden}
.widget::after{content:"";position:absolute;right:-50px;top:-50px;width:150px;height:150px;border-radius:50%;border:16px solid rgba(75,172,214,.25);pointer-events:none}
.widget-title,.widget h2,.widget .wp-block-heading{font:24px/1.1 var(--display);margin:0 0 14px;color:#fff;position:relative;font-weight:400}
.widget .widget-title+.textwidget,.widget p{position:relative}
.widget ul{list-style:none;margin:0;padding:0;counter-reset:jersey}
.widget li{counter-increment:jersey;display:flex;align-items:center;gap:12px;padding:7px 0;border-bottom:1px dashed rgba(255,255,255,.18);font-size:15px;line-height:1.3}
.widget li::before{content:counter(jersey);flex:none;width:30px;height:30px;display:grid;place-items:center;font:12px var(--display);color:var(--navy);background:var(--sun);clip-path:polygon(22% 0,78% 0,100% 18%,88% 34%,88% 100%,12% 100%,12% 34%,0 18%)}
.widget li:nth-child(3n+2)::before{background:var(--sky)}.widget li:nth-child(3n)::before{background:#fff}
.widget a{color:#fff;text-decoration:none}.widget a:hover{color:var(--sun)}
.widget strong,.widget b{font-weight:500}
.widget img{border-radius:10px}
.widget input[type=search],.widget input[type=text]{width:100%}

/* Call-to-action buttons (Custom HTML widget with a.button links) */
.widget_custom_html:has(a.button){background:none;padding:0;overflow:visible}
.widget_custom_html:has(a.button)::after{display:none}
.widget a.button{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:14px 18px;border:3px solid var(--navy);border-radius:999px;box-shadow:0 5px 0 var(--navy);background:var(--sun);color:var(--navy);font:16px/1.1 var(--display);text-transform:uppercase;text-decoration:none;transition:transform .15s,box-shadow .15s}
.widget a.button:last-child{margin-bottom:0}
.widget a.button:hover{color:var(--navy);transform:translateY(3px);box-shadow:0 2px 0 var(--navy)}
.widget a.button:nth-of-type(2){background:#FFD7CF}
.widget a.button:nth-of-type(3){background:#fff}
.widget a.button i{display:none}
.widget a.button::before{content:"";flex:none;width:34px;height:34px;border-radius:50%;background:#fff center/20px no-repeat;border:2px solid var(--navy)}
.widget a.button[href*="sponsor"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23143A66' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l3 6.5 7 .9-5.1 4.8 1.3 6.9L12 17.8 5.8 21.1l1.3-6.9L2 9.4l7-.9z'/%3E%3C/svg%3E")}
.widget a.button[href*="donat"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23143A66' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7.5-4.6-9.6-9.3C.8 8 3 4 6.8 4c2.2 0 3.6 1.3 5.2 3.2C13.6 5.3 15 4 17.2 4 21 4 23.2 8 21.6 11.7 19.5 16.4 12 21 12 21z'/%3E%3C/svg%3E")}
.widget a.button[href*="grant"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23143A66' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 2v6h6M9 15l2 2 4-4'/%3E%3C/svg%3E")}

/* forms */
input[type=text],input[type=email],input[type=search],input[type=url],input[type=tel],input[type=number],textarea,select{font:inherit;color:var(--ink);background:#fff;border:2px solid var(--navy);border-radius:12px;padding:10px 14px;max-width:100%}
button,input[type=submit],.search-submit{font:15px/1 var(--display);text-transform:uppercase;background:var(--sun);color:var(--navy);border:3px solid var(--navy);border-radius:999px;padding:12px 20px;box-shadow:0 3px 0 var(--navy);cursor:pointer}
.search-form{display:flex;gap:8px;flex-wrap:wrap}
.search-form label{flex:1;min-width:180px}.search-form .search-field{width:100%}

/* comments */
.comments-area{margin-top:30px}
.comment-list{list-style:none;padding:0}
.comment-body{background:var(--sky-50);border-radius:16px;padding:16px 20px;margin-bottom:14px}

/* ---------- Footer ---------- */
.site-footer{background:var(--sky);color:var(--navy);position:relative;padding:90px 0 0;margin-top:40px}
.site-footer::before{content:"";position:absolute;left:0;right:0;top:-40px;height:80px;background:var(--sky);border-radius:50% 50% 0 0/100% 100% 0 0}
.site-footer .field{position:absolute;inset:20px 20px 70px;border:3px solid rgba(255,255,255,.4);border-radius:6px;pointer-events:none}
.site-footer .field::before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:3px solid rgba(255,255,255,.4)}
.site-footer .field::after{content:"";position:absolute;left:50%;top:50%;width:140px;height:140px;margin:-70px 0 0 -70px;border:3px solid rgba(255,255,255,.4);border-radius:50%}
.site-footer .stripes{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 80px,rgba(255,255,255,.07) 80px 160px);pointer-events:none}
.site-footer .foot-cols{position:relative;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;padding-bottom:50px}
.site-footer h2{font:20px var(--display);margin:0 0 12px;text-transform:uppercase;color:var(--navy)}
.site-footer p{margin:0 0 8px}
.site-footer strong{color:var(--navy);font-weight:700}
.site-footer .foot-cols.has-business-info{grid-template-columns:2fr 1fr}
.foot-info{max-width:62ch}
.foot-info .foot-widget+.foot-widget{margin-top:20px}
.foot-info p{margin:0 0 10px}
/* label: value rows — values line up, wrapped lines stay under the value */
.foot-info .textwidget p:has(>strong:first-child){display:grid;grid-template-columns:max-content 1fr;column-gap:.45em;align-items:baseline}
.foot-info .textwidget p.credit{margin-top:18px;font-size:14px}
.foot-info .hand{font:28px/1.1 var(--hand);color:var(--navy);display:block;margin-top:14px}
.site-footer a{color:var(--navy)}.site-footer a:hover{color:#fff}
.site-footer ul{list-style:none;margin:0;padding:0;columns:2;gap:20px}
.site-footer li{margin-bottom:6px;break-inside:avoid}
.site-footer li a{text-decoration:none}
.site-footer .sub-menu{display:none}
.foot-brand .hand{font:28px/1.1 var(--hand);color:var(--navy);display:block;margin-top:10px}
.foot-bottom{position:relative;background:var(--navy);color:#fff;font-size:14px}
.foot-bottom a{color:#fff}.foot-bottom a:hover{color:var(--sun)}
.foot-bottom span:last-child{font:18px var(--hand);color:var(--sun)}
.foot-bottom .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:16px;padding-bottom:16px;flex-wrap:wrap}

/* ---------- Responsive ---------- */
@media (min-width:1041px) and (max-width:1240px){
  .hero .wrap{grid-template-columns:1.3fr .7fr}
  .btn{font-size:14px;padding:14px 15px;gap:7px}
  .btn svg{width:17px;height:17px}
}
@media (max-width:1040px){
  .site-header .wrap{flex-wrap:wrap;justify-content:center}
  .nav>ul,.nav .menu{justify-content:center}
  .tiles ul{grid-template-columns:repeat(2,1fr)}
  .site-main>.wrap{grid-template-columns:1fr}
  .sidebar .widget ul{columns:2;column-gap:24px}
  .sidebar .widget li{break-inside:avoid}
}
@media (max-width:760px){
  body{font-size:16px}
  .brand img{width:170px}
  .menu-toggle{display:inline-flex;align-items:center;gap:8px;font:15px var(--display);text-transform:uppercase;background:var(--sun);color:var(--navy);border:3px solid var(--navy);border-radius:999px;padding:9px 16px;box-shadow:0 3px 0 var(--navy);cursor:pointer}
  .nav{width:100%;display:flex;flex-direction:column;align-items:center}
  .nav>ul,.nav .menu{display:none;flex-direction:column;width:100%;background:#fff;border:3px solid var(--navy);border-radius:18px;padding:8px;margin-top:12px}
  .nav.open>ul,.nav.open .menu{display:flex}
  .nav a{text-align:center}
  .nav a:hover{transform:none}
  .nav .sub-menu,.nav .children{position:static;display:block;border:0;box-shadow:none;padding:0 0 0 12px;min-width:0}
  .hero,.hero:has(+.site-main){padding-bottom:64px}
  .hero .wrap{grid-template-columns:1fr}
  .playfield{max-width:300px;order:-1}
  .page-hero .doodle{display:none}
  .tiles ul{grid-template-columns:1fr 1fr;gap:12px}
  .tile{padding:16px}.tile span{display:none}.tile b{font-size:16px}
  .entry{padding:30px 20px;border-radius:22px}
  .entry-thumb{margin:-30px -20px 20px;border-radius:19px 19px 0 0}
  .entry-content .wp-block-file{flex-wrap:wrap;padding-left:58px}
  .entry-content .wp-block-table{padding:4px}
  .entry-content .wp-block-table table{border-spacing:4px}
  .entry-content .wp-block-table tr:first-child td{font-size:11px;padding:8px 2px}
  .entry-content .wp-block-table tr:first-child td strong:first-child{font-size:22px}
  .alignleft,.alignright{float:none;margin:1em auto}
  .sidebar .widget ul{columns:1}
  .site-footer .foot-cols,.site-footer .foot-cols.has-business-info{grid-template-columns:1fr;gap:28px}
  .site-footer .field{display:none}
  .topbar .hand{display:none}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rise{opacity:1;transform:none}}
