/* THIP join invitation: popup + floating button (all pages) */
:root{--tj-amber:#F6B656;--tj-coral:#F0776A;--tj-violet:#8B6BE0;--tj-teal:#3FB7C9;--tj-green:#7BE08A;--tj-ink:#0E1A14;--tj-cream:#FFF8EC}
.tj-tab{position:fixed;left:18px;bottom:18px;z-index:9998;display:flex;align-items:center;gap:8px;border:0;cursor:pointer;
 font:700 16px/1 Figtree,system-ui,sans-serif;color:#1b1030;padding:14px 20px;border-radius:999px;
 background:linear-gradient(100deg,var(--tj-amber),var(--tj-coral) 45%,var(--tj-violet));box-shadow:0 10px 28px rgba(0,0,0,.35)}
.tj-tab:hover{transform:translateY(-2px)}.tj-tab:focus-visible{outline:3px solid #fff;outline-offset:3px}
.tj-tab .tj-spark{font-size:18px}
.tj-back{position:fixed;inset:0;z-index:9999;background:rgba(8,14,11,.72);display:none;align-items:center;justify-content:center;padding:16px}
.tj-back.tj-open{display:flex;animation:tjfade .25s ease}
@keyframes tjfade{from{opacity:0}to{opacity:1}}@keyframes tjrise{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
.tj-box{position:relative;width:min(520px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:26px;background:var(--tj-cream);color:var(--tj-ink);
 box-shadow:0 30px 80px rgba(0,0,0,.5);animation:tjrise .35s ease;font-family:Figtree,system-ui,sans-serif}
.tj-art{position:relative;height:150px;border-radius:26px 26px 0 0;overflow:hidden;
 background:radial-gradient(circle at 18% 120%,var(--tj-amber) 0 26%,transparent 27%),radial-gradient(circle at 82% -20%,var(--tj-teal) 0 30%,transparent 31%),
 linear-gradient(115deg,var(--tj-coral),var(--tj-violet) 60%,#4b3aa8)}
.tj-art span{position:absolute;border-radius:50%;background:rgba(255,255,255,.22)}
.tj-art .a{width:60px;height:60px;left:58%;top:28px}.tj-art .b{width:22px;height:22px;left:72%;top:96px}.tj-art .c{width:12px;height:12px;left:30%;top:36px}
.tj-badge{position:absolute;left:28px;bottom:22px;font:800 13px/1 Figtree,system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#fff;
 background:rgba(14,26,20,.35);padding:9px 14px;border-radius:999px}
.tj-body{padding:26px 30px 28px}
.tj-body h2{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:32px;line-height:1.1;margin:0 0 10px;color:var(--tj-ink);letter-spacing:-.01em}
.tj-body h2 em{font-style:italic;color:#B5482F}
.tj-body p{font-size:17px;line-height:1.5;margin:0 0 14px;color:#2b352e}
.tj-list{list-style:none;margin:0 0 18px;padding:0}.tj-list li{display:flex;gap:10px;font-size:16.5px;line-height:1.4;margin:7px 0;color:#2b352e}
.tj-list li b{flex:0 0 24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:13px;color:#fff}
.tj-list li:nth-child(1) b{background:var(--tj-coral)}.tj-list li:nth-child(2) b{background:var(--tj-violet)}.tj-list li:nth-child(3) b{background:var(--tj-teal)}
.tj-form{display:flex;gap:10px;flex-wrap:wrap}
.tj-form input{flex:1 1 220px;min-width:0;font:500 18px Figtree,system-ui,sans-serif;padding:15px 16px;border-radius:14px;border:2px solid #d9cdb8;background:#fff;color:var(--tj-ink)}
.tj-form input:focus{outline:none;border-color:var(--tj-violet);box-shadow:0 0 0 4px rgba(139,107,224,.18)}
.tj-form button{flex:0 0 auto;border:0;cursor:pointer;font:800 18px Figtree,system-ui,sans-serif;padding:15px 24px;border-radius:14px;color:#fff;
 background:linear-gradient(100deg,var(--tj-coral),var(--tj-violet))}
.tj-form button:hover{filter:brightness(1.06)}
.tj-fine{font-size:14px !important;color:#6b6457 !important;margin:12px 0 0 !important}
.tj-fine a{color:#5a44b8}
.tj-later{display:block;margin:14px auto 0;background:none;border:0;cursor:pointer;font:600 15px Figtree,system-ui,sans-serif;color:#6b6457;text-decoration:underline}
.tj-x{position:absolute;right:14px;top:14px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;cursor:pointer;background:rgba(255,255,255,.9);
 font:700 22px/40px Figtree,system-ui,sans-serif;color:var(--tj-ink)}
.tj-done{display:none;text-align:center;padding:6px 0 4px}.tj-done .big{font-size:46px;line-height:1;margin-bottom:8px}
.tj-sent .tj-ask{display:none}.tj-sent .tj-done{display:block}
@media (max-width:520px){.tj-form button{flex:1 1 100%}.tj-art{height:110px}.tj-body{padding:22px 20px 24px}.tj-body h2{font-size:27px}.tj-tab{left:12px;bottom:12px;padding:12px 16px;font-size:15px}}
@media (prefers-reduced-motion:reduce){.tj-back.tj-open,.tj-box{animation:none}}
/* Splash banners: small bursts of color placed through the site */
.thip-splash{box-sizing:border-box;display:flex;align-items:center;gap:20px;border-radius:22px;padding:22px 26px;color:#14101f;text-decoration:none !important;
 box-shadow:0 12px 30px rgba(0,0,0,.25);transition:transform .15s ease;margin-top:40px !important;margin-bottom:40px !important}
.thip-splash:hover{transform:translateY(-2px)}
.thip-splash .ts-ico{flex:0 0 52px;height:52px;border-radius:50%;background:rgba(255,255,255,.35);display:grid;place-items:center;font-size:26px}
.thip-splash .ts-txt{flex:1;min-width:0;font-family:Figtree,system-ui,sans-serif}
.thip-splash .ts-txt strong{display:block;font-family:Fraunces,Georgia,serif;font-weight:600;font-size:23px;line-height:1.2;color:#14101f}
.thip-splash .ts-txt span{display:block;font-size:16px;line-height:1.45;color:#2a2238;margin-top:3px}
.thip-splash .ts-go{flex:0 0 auto;background:#14101f;color:#fff;font:700 15px Figtree,system-ui,sans-serif;padding:12px 18px;border-radius:999px;white-space:nowrap}
.ts-sunset{background:linear-gradient(100deg,#F6B656,#F0776A)}
.ts-dusk{background:linear-gradient(100deg,#F0776A,#8B6BE0)}
.ts-lagoon{background:linear-gradient(100deg,#3FB7C9,#8B6BE0)}
.ts-dawn{background:linear-gradient(100deg,#F6B656,#3FB7C9)}
.ts-berry{background:linear-gradient(100deg,#8B6BE0,#E46FA6)}
.ts-meadow{background:linear-gradient(100deg,#3FB7C9,#9BE07B)}
.thip-splash.ts-small{flex-direction:column;align-items:flex-start;gap:10px;padding:18px 20px;margin-top:22px !important;margin-bottom:0 !important}
.thip-splash.ts-small .ts-ico{display:none}.thip-splash.ts-small .ts-txt strong{font-size:20px}.thip-splash.ts-small .ts-go{padding:10px 16px}
@media (max-width:640px){.thip-splash{flex-wrap:wrap;gap:14px;padding:20px}.thip-splash .ts-ico{flex-basis:44px;height:44px;font-size:22px}.thip-splash .ts-txt{flex-basis:calc(100% - 64px)}}
/* Home hero: a colorful "ground" stripe under the march of humanity */
.wp-block-image:has(img[src*="banner-march"]){position:relative;padding-bottom:16px}
.wp-block-image:has(img[src*="banner-march"])::after{content:"";position:absolute;left:1%;right:10%;bottom:0;height:10px;border-radius:999px;
 background:linear-gradient(90deg,#F6B656,#F0776A 30%,#8B6BE0 62%,#3FB7C9 85%,#7BE08A);
 box-shadow:0 0 28px rgba(240,119,106,.45),0 0 60px rgba(139,107,224,.35)}
