/*
Theme Name: NCORE Foundation
Theme URI: https://ncore.org
Author: NCORE Foundation
Author URI: https://ncore.org
Description: Official WordPress theme for NCORE Foundation (Network for Cyber Online Rehabilitation & Empowerment). Includes Home, About, Initiatives, Session Request, Get Involved, Donate, Blogs and Videos templates.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: ncore
*/


:root{--ink:#111214;--ink2:#3a3d42;--mute:#6b7078;--line:#dfe1e5;--bg:#fff;--soft:#f7f8fa;--card:#fff;--acc:#1F3A5F;--gold:#D97706;--inv:#fff;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*:before,*:after{box-sizing:border-box}html{scroll-padding-top:90px;scroll-behavior:smooth;height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 "Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;min-height:100%}
@media (pointer:fine){html,body,a,button,select,input,textarea,label{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Cg fill='none' stroke='%231F3A5F' stroke-width='1.6'%3E%3Ccircle cx='14' cy='14' r='6'/%3E%3Cpath d='M14 1v7M14 20v7M1 14h7M20 14h7'/%3E%3C/g%3E%3Ccircle cx='14' cy='14' r='1.8' fill='%231F3A5F'/%3E%3C/svg%3E") 14 14,crosshair}}
#ring{position:fixed;left:0;top:0;width:38px;height:38px;margin:-19px 0 0 -19px;border:1px dashed var(--acc);border-radius:50%;pointer-events:none;z-index:999;opacity:.5;transition:width .2s,height .2s,margin .2s,opacity .2s;display:none}
#ring.on{width:58px;height:58px;margin:-29px 0 0 -29px;opacity:.9}
#bar{position:fixed;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--acc),var(--gold));z-index:100}
header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.wrap{max-width:1160px;margin:0 auto;padding:0 22px}
.nav{display:flex;align-items:center;gap:22px;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand img{width:56px;height:56px;border-radius:50%;background:#fff}
.brand b{display:block;letter-spacing:.12em;font-size:18px;line-height:1}.brand small{font-size:10px;color:var(--mute);letter-spacing:.06em;text-transform:uppercase}
nav{margin-left:auto;display:flex;align-items:center;gap:4px}
nav a,.dd>button{color:var(--ink2);text-decoration:none;font-size:14px;font-weight:500;padding:8px 12px;border:0;background:none;position:relative;font-family:inherit}
nav a:after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s}
nav a:hover:after,nav a.act:after{transform:scaleX(1)}nav a.act,nav a:hover{color:var(--ink)}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--acc);color:#fff!important;padding:11px 22px;border-radius:4px;border:1px solid var(--acc);text-decoration:none;font:600 14px inherit;font-family:inherit;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.18)}.btn.o{background:transparent;color:var(--acc)!important}.btn.o:hover{background:var(--acc);color:#fff!important}nav a.btn.d{background:var(--gold);border-color:var(--gold)}
nav a.btn:after{display:none}
.dd{position:relative}.dd>button{display:flex;gap:5px;align-items:center}
.dd .m{position:absolute;right:0;top:110%;min-width:250px;background:var(--card);border:1px solid var(--line);border-radius:6px;box-shadow:0 14px 34px rgba(0,0,0,.14);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}
.dd:hover .m,.dd:focus-within .m{opacity:1;visibility:visible;transform:none}
.dd .m a{display:block;padding:10px 12px;border-radius:4px}.dd .m a:hover{background:var(--soft)}.dd .m a:after{display:none}
.dd .m span{display:block;font-size:12px;color:var(--mute);font-weight:400}
#burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:4px;padding:8px 12px;color:var(--ink);font-size:18px}
@keyframes in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#f3f6fb,#fff);border-bottom:1px solid var(--line)}
.hero canvas{position:absolute;inset:0;width:100%;height:100%}
.hero .wrap{position:relative;padding-top:96px;padding-bottom:96px;max-width:1160px}
.eyebrow{font:600 12px/1 ui-monospace,Menlo,monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--acc)}
.eyebrow:before{content:"> ";}
h1{font-size:clamp(34px,5.4vw,58px);line-height:1.08;margin:14px 0 18px;letter-spacing:-.02em;max-width:800px}
h2{font-size:clamp(26px,3.4vw,36px);margin:10px 0 12px;letter-spacing:-.01em;line-height:1.2}h3{margin:0 0 6px;font-size:18px}
.lead{font-size:18px;color:var(--ink2);max-width:640px}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.cur:after{content:"_";color:var(--gold);animation:bl 1s steps(1) infinite}@keyframes bl{50%{opacity:0}}
section.s{padding:72px 0}section.alt{background:var(--soft);border-block:1px solid var(--line)}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:30px}
.card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:24px;transition:transform .3s,box-shadow .3s,border-color .3s;position:relative;overflow:hidden}
.card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(31,58,95,.14);border-color:var(--acc)}
.card:before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--acc);transition:width .4s}.card:hover:before{width:100%}
.ic{color:var(--acc);width:42px;height:42px;border:1px solid #cfd8e6;border-radius:6px;display:grid;place-items:center;margin-bottom:14px;font-size:20px;background:#eef2f8}
.card p,.muted{color:var(--mute);margin:0;font-size:15px}.tag{font:600 11px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);border:1px solid var(--line);border-radius:20px;padding:3px 10px;display:inline-block;margin-top:14px}
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.rv.in{opacity:1;transform:none}
.split{display:grid;gap:40px;grid-template-columns:1.1fr .9fr;align-items:center}
.help{background:#eef2f8;color:var(--ink);padding:64px 0;border-top:3px solid var(--acc)}.help .eyebrow,.help p{color:var(--mute)}
.hl{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:26px}
.hl div{background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px;transition:transform .3s,border-color .3s,box-shadow .3s}.hl div:hover{transform:translateY(-4px);border-color:var(--ink);box-shadow:0 12px 26px rgba(0,0,0,.08)}.hl b{color:var(--acc)}.hl div:hover{border-color:var(--gold)}
.hl b{font:700 32px ui-monospace,monospace;display:block;margin:6px 0}
.pill{padding:80px 0 56px;background:var(--soft);border-bottom:1px solid var(--line)}
.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:28px;flex-wrap:wrap}
.tabs button{background:none;border:0;padding:12px 18px;font:600 14px inherit;font-family:inherit;color:var(--mute);border-bottom:2px solid transparent;margin-bottom:-1px}
.tabs button.on{color:var(--acc);border-color:var(--gold)}
.tp{display:none;animation:in .4s}.tp.on{display:block}
form{display:grid;grid-template-columns:1fr 1fr;gap:18px;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:28px}
form .f{grid-column:span 1}form .w{grid-column:1/-1}
label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
input,select,textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:4px;background:var(--soft);color:var(--ink);font:inherit;transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--acc);box-shadow:0 0 0 3px rgba(31,58,95,.16)}
.ok{display:none;margin-top:14px;padding:14px;border:1px solid var(--acc);background:#eef2f8;border-radius:4px;font-weight:600}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 18px}
.chips button{padding:12px 20px;border:1px solid var(--line);border-radius:4px;background:var(--card);color:var(--ink);font:600 15px inherit;font-family:inherit;transition:.2s}
.chips button:hover,.chips button.on{background:var(--acc);color:#fff;border-color:var(--acc)}
.steps{counter-reset:s;display:grid;gap:14px;margin-top:20px}.steps div{padding-left:52px;position:relative}.steps div:before{counter-increment:s;content:"0" counter(s);position:absolute;left:0;top:0;font:700 15px ui-monospace,monospace;border:1px solid var(--acc);color:var(--acc);border-radius:6px;width:38px;height:38px;display:grid;place-items:center;background:#eef2f8}
.thumb{height:130px;background:var(--soft);border-radius:4px;margin-bottom:14px;display:grid;place-items:center;font-size:34px;border:1px solid var(--line)}
footer{background:var(--soft);border-top:1px solid var(--line);padding:48px 0 28px;font-size:14px;color:var(--mute)}
footer .g{display:grid;gap:30px;grid-template-columns:2fr 1fr 1fr 1fr}footer a{display:block;color:var(--ink2);text-decoration:none;padding:3px 0}footer a:hover{color:var(--ink);text-decoration:underline}footer h4{color:var(--ink);margin:0 0 10px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
#top{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));width:44px;height:44px;border-radius:50%;border:1px solid var(--acc);color:var(--acc);background:var(--bg);color:var(--ink);opacity:0;pointer-events:none;transition:.3s;font-size:18px}#top.v{opacity:1;pointer-events:auto}
@media(max-width:900px){nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:12px 22px}nav.open{display:flex}#burger{display:block}.dd .m{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none}.split{grid-template-columns:1fr}form{grid-template-columns:1fr}footer .g{grid-template-columns:1fr 1fr}}
.g3{grid-template-columns:repeat(3,1fr)}.g3 .card .tag{color:var(--acc);border-color:var(--acc)}
.stats{padding:44px 0 0}.sst{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px rgba(31,58,95,.08);overflow:hidden}
.sst div{padding:30px 14px;text-align:center;border-right:1px solid var(--line);transition:background .3s}.sst div:last-child{border:0}.sst div:hover{background:#f3f6fb}
.sst b{display:block;font:800 clamp(28px,4.2vw,44px)/1.1 ui-monospace,Menlo,monospace;color:var(--acc)}.sst span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.sl{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:8px;padding:24px 28px;margin-top:26px}
.sl small{display:block;color:var(--mute);font-size:13px}.sl b{display:block;font:800 clamp(26px,4vw,40px)/1.2 ui-monospace,Menlo,monospace;color:var(--acc)}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#2f9e60;margin-right:8px;animation:pl 1.6s infinite}@keyframes pl{0%{box-shadow:0 0 0 0 rgba(47,158,96,.5)}100%{box-shadow:0 0 0 10px rgba(47,158,96,0)}}
.hb{margin-top:20px;background:#fff;border:1px solid var(--acc);border-radius:10px;padding:32px}.sv{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0}
.sv>div{padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--soft);transition:transform .3s,border-color .3s}.sv>div:hover{transform:translateY(-4px);border-color:var(--acc)}.sv p{margin:0;color:var(--mute);font-size:15px}
.btn.big{width:100%;justify-content:center;font-size:18px;padding:20px}.hb small{display:block;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--mute);text-align:center}
@media(max-width:900px){.g3{grid-template-columns:1fr 1fr}.sv{grid-template-columns:1fr}}@media(max-width:600px){.g3{grid-template-columns:1fr}.sst span{font-size:10px}}
.sv>div{background:none;border:0;border-top:2px solid var(--acc);border-radius:0;padding:16px 0 0}.sv>div:hover{transform:none;border-color:var(--gold)}
.gh{display:flex;align-items:center;justify-content:space-between;margin:44px 0 14px}.gh h3{margin:0}.gh button{width:42px;height:42px;border:1px solid var(--acc);background:#fff;color:var(--acc);border-radius:50%;font-size:22px;margin-left:8px;transition:.2s}.gh button:hover{background:var(--acc);color:#fff}
.gal{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:6px}.gal::-webkit-scrollbar{display:none}
.gt{flex:0 0 min(320px,80%);height:220px;scroll-snap-align:start;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#eef2f8,#dde5f1);display:grid;place-items:center;text-align:center;color:var(--acc);font-size:13px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s}.gt:hover{transform:translateY(-5px);box-shadow:0 14px 30px rgba(31,58,95,.16)}.gt i{display:block;font-style:normal;font-size:32px;margin-bottom:6px}.gt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tt{display:flex;gap:28px;border-bottom:1px solid var(--line);margin:24px 0 30px;flex-wrap:wrap}.tt button{position:relative;background:none;border:0;padding:12px 0;font:600 16px inherit;font-family:inherit;color:var(--mute);transition:color .3s}.tt button:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .35s}.tt button.on{color:var(--ink)}.tt button.on:after,.tt button:hover:after{transform:scaleX(1)}
.tmg{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.mem{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden;animation:mi .5s both;transition:box-shadow .3s,border-color .3s;outline:0}.mem:hover,.mem:focus{box-shadow:0 16px 32px rgba(31,58,95,.14);border-color:var(--acc)}@keyframes mi{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.ph{position:relative;aspect-ratio:4/4.4;overflow:hidden;background:#e9eef6 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 110'%3E%3Ccircle cx='50' cy='42' r='18' fill='%23b9c6da'/%3E%3Cpath d='M14 110c0-24 16-38 36-38s36 14 36 38z' fill='%23b9c6da'/%3E%3C/svg%3E") center/70% no-repeat;filter:grayscale(.3);transition:filter .4s}.mem:hover .ph{filter:none}
.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ab{position:absolute;left:0;right:0;bottom:0;top:0;background:rgba(243,246,251,.97);border-top:3px solid var(--gold);padding:20px;display:flex;flex-direction:column;justify-content:center;transform:translateY(101%);transition:transform .45s cubic-bezier(.2,.8,.2,1);font-size:14px;color:var(--ink2)}.mem:hover .ab,.mem:focus .ab{transform:none}.ab b{color:var(--acc);display:block;margin-bottom:6px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.mem .in{padding:16px 18px 18px}.mem h3{margin:0;font-size:17px}.mem .in span{color:var(--mute);font-size:14px}
.tb{display:flex;gap:12px;align-items:center;margin:26px 0;flex-wrap:wrap}.tb .btn{height:46px;font-size:15px}
.sb{display:flex;align-items:center;height:46px;border:1px solid var(--acc);border-radius:4px;background:#fff;overflow:hidden}.sb button{width:46px;height:44px;border:0;background:none;font-size:18px}.sb input{width:0;padding:0;border:0;background:transparent;height:44px;border-radius:0;box-shadow:none!important;transition:width .35s,padding .35s}.sb.open input{width:min(230px,52vw);padding:0 12px}
.net{position:relative;height:clamp(440px,52vw,520px);margin-top:20px;background:radial-gradient(circle at 50% 50%,#eef2f8,transparent 70%);border-radius:12px}.net svg{position:absolute;inset:0;width:100%;height:100%}
.net line{stroke:#b3c2d8;stroke-width:1.3;vector-effect:non-scaling-stroke;stroke-dasharray:5 5;animation:fl 1.6s linear infinite;transition:stroke .3s}.net line.hi{stroke:var(--gold);stroke-width:2.4}@keyframes fl{to{stroke-dashoffset:-20}}
.nn{position:absolute;transform:translate(-50%,-50%);width:clamp(108px,17vw,190px);text-decoration:none;color:var(--ink);z-index:2}.ni{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px;box-shadow:0 8px 20px rgba(31,58,95,.08);animation:fy 4s ease-in-out infinite;transition:border-color .3s,box-shadow .3s}.nn:hover .ni{border-color:var(--gold);box-shadow:0 14px 28px rgba(31,58,95,.2)}@keyframes fy{50%{transform:translateY(-7px)}}
.ni small{color:var(--acc);font:700 10px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}.ni b{display:block;font-size:clamp(11px,1.3vw,14px);line-height:1.3;margin:3px 0}.ni span{color:var(--mute);font-size:11px}
.nh{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:clamp(92px,13vw,130px);aspect-ratio:1;border-radius:50%;background:var(--acc);color:#fff;display:grid;place-items:center;text-align:center;font:700 14px/1.2 ui-monospace,monospace;letter-spacing:.1em;z-index:2;box-shadow:0 0 0 10px rgba(31,58,95,.1),0 0 0 22px rgba(31,58,95,.05);animation:pl2 3s infinite}.nh small{display:block;font-size:10px;opacity:.8;font-weight:400}@keyframes pl2{50%{box-shadow:0 0 0 16px rgba(31,58,95,.1),0 0 0 32px rgba(31,58,95,.04)}}
.bgd{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.bc{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;animation:mi .5s both;transition:transform .3s,box-shadow .3s,border-color .3s}.bc:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(31,58,95,.14);border-color:var(--acc)}.bc.fl{animation:fh 1.4s}@keyframes fh{30%{box-shadow:0 0 0 4px var(--gold)}}
.bt{height:120px;display:grid;place-items:center;font-size:32px;background:linear-gradient(135deg,#eef2f8,#d5e0ee);position:relative}.bt em{position:absolute;left:14px;top:12px;font:700 10px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--acc);background:#fff;border-radius:20px;padding:3px 10px;font-style:normal}
.bb{padding:18px;display:flex;flex-direction:column;flex:1}.bb h3{font-size:17px;line-height:1.35}.bb p{color:var(--mute);font-size:14px;margin:0 0 14px}.bb div{margin-top:auto;display:flex;justify-content:space-between;font-size:13px;color:var(--mute)}.bb a{color:var(--acc);font-weight:600;text-decoration:none}
.vfc{position:relative;aspect-ratio:16/7.5;min-height:230px;border-radius:14px;overflow:hidden;background:linear-gradient(0deg,rgba(31,58,95,.7),transparent 60%),linear-gradient(135deg,#a9c4dd,#5f8db5);color:#fff;display:grid;place-items:center;animation:in .5s}
.vp{width:64px;height:64px;border-radius:50%;border:2px solid #fff;background:rgba(255,255,255,.25);color:#fff;font-size:22px;backdrop-filter:blur(4px);transition:transform .3s,background .3s}.vp:hover{transform:scale(1.12);background:rgba(255,255,255,.45)}
.vcap{position:absolute;left:24px;bottom:20px;right:24px}.vcap h3{color:#fff;font-size:clamp(17px,2.4vw,24px);margin:6px 0 2px}.vcap span{font-size:13px;opacity:.9}.vtag{position:absolute;left:24px;top:20px;background:#fff;color:var(--acc);font:700 11px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:20px}
.vm{position:absolute;inset:0;background:rgba(31,58,95,.9);display:grid;place-items:center;text-align:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .3s}.vfc.pl .vm{opacity:1;pointer-events:auto}
.vth{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}.vk{border:1px solid var(--line);background:none;padding:0;border-radius:10px;overflow:hidden;text-align:left;opacity:.6;transition:opacity .3s,transform .3s,border-color .3s;font-family:inherit;color:var(--ink)}.vk:hover,.vk.on{opacity:1;transform:translateY(-4px)}.vk.on{border-color:var(--gold);border-width:2px}
.vi{height:84px;display:grid;place-items:center;background:linear-gradient(135deg,hsl(212 45% 90%),hsl(212 35% 78%))}.vi i{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.7);border:1px solid #fff;display:grid;place-items:center;font-style:normal;font-size:12px;color:var(--acc)}.vk span{display:block;padding:8px 10px;font-size:12px;line-height:1.3}
.vg{display:none;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}.vg.show{display:grid}.vg .vk{opacity:1;animation:mi .5s both}.vg .vk span small{display:block;color:var(--mute);margin-top:2px}
@media(max-width:700px){.vth{grid-template-columns:repeat(2,1fr)}.vcap{left:16px;right:16px}}
.brand img{box-shadow:0 0 0 1px var(--line)}
.dd>button:after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s}.dd:hover>button:after,.dd>button.act:after{transform:scaleX(1)}.dd>button:hover,.dd>button.act,.dd:hover>button{color:var(--ink)}.cv{font-size:11px;transition:transform .3s}.dd:hover .cv{transform:rotate(180deg)}
.sv{gap:16px}.sv>div{background:#f5f8fc;border:1px solid transparent;border-top:1px solid transparent;border-radius:12px;padding:20px 22px;transition:transform .3s,box-shadow .3s,background .3s}
.sv>div:before{content:"";display:block;width:26px;height:3px;border-radius:3px;background:var(--gold);margin-bottom:14px;transition:width .35s}
.sv>div:hover{transform:translateY(-4px);background:#fff;border-color:#d5deeb;box-shadow:0 12px 26px rgba(31,58,95,.1)}.sv>div:hover:before{width:54px}
.sq{display:flex;align-items:center;gap:12px;height:52px;flex:1;min-width:240px;max-width:460px;padding:0 18px;border:2px solid transparent;border-radius:12px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,#f6c9dc,#cfe6f4,#b6c6ef) border-box;box-shadow:0 8px 22px rgba(31,58,95,.1);transition:box-shadow .3s,transform .3s}
.sq:focus-within{box-shadow:0 12px 30px rgba(31,58,95,.2);transform:translateY(-2px)}.sq svg{flex:none}
.sq input,.sq input:focus{flex:1;min-width:0;border:0!important;background:transparent;box-shadow:none!important;padding:0;font-size:16px;font-weight:500;color:var(--ink)}.sq input::placeholder{color:#666b73;font-weight:500}
.tb .btn{height:52px}.bgd{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}

/* NCORE Foundation Editable v3 - Gutenberg blocks */
.ncore-page-content > .wp-block-group, .ncore-page-content > .wp-block-html { margin-top:0; margin-bottom:0; }
.wp-block-group.wrap { max-width:1160px; margin-left:auto; margin-right:auto; padding-left:22px; padding-right:22px; box-sizing:border-box; }
.hero.wp-block-group { position:relative; overflow:hidden; background:linear-gradient(180deg,#f3f6fb,#fff); border-bottom:1px solid var(--line); }
.hero.wp-block-group > .wrap { position:relative; padding-top:96px; padding-bottom:96px; }
.wp-block-buttons.cta { margin-top:26px; gap:12px; }
.wp-block-button.ncore-btn .wp-block-button__link { display:inline-flex; align-items:center; gap:8px; background:var(--acc); color:#fff!important; padding:11px 22px; border-radius:4px; border:1px solid var(--acc); text-decoration:none; font:600 14px inherit; }
.wp-block-button.ncore-btn.outline .wp-block-button__link { background:transparent; color:var(--acc)!important; }
.wp-block-button.ncore-btn.gold .wp-block-button__link { background:var(--gold); border-color:var(--gold); }
.ncore-edit-note { background:#fff7df; border:1px solid #ead28b; padding:12px 16px; margin:20px 0; border-radius:6px; }
.wp-block-columns.ncore-grid { gap:20px; margin-top:30px; }
.wp-block-column.ncore-card { background:var(--card); border:1px solid var(--line); border-radius:6px; padding:24px; position:relative; overflow:hidden; }
.wp-block-column.ncore-card .wp-block-heading { margin-top:0; }
.ncore-stats .wp-block-column { text-align:center; padding:30px 14px; border-right:1px solid var(--line); }
.ncore-stats .wp-block-column:last-child { border-right:0; }
.ncore-stats { background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:0 10px 30px rgba(31,58,95,.08); overflow:hidden; margin-top:0; }
.ncore-stat-number { display:block; font:800 clamp(28px,4.2vw,44px)/1.1 ui-monospace,Menlo,monospace; color:var(--acc); }
.ncore-stat-label { font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:var(--mute); }
@media(max-width:760px){ .wp-block-columns.ncore-grid { display:block; } .wp-block-columns.ncore-grid .wp-block-column { margin-bottom:18px; } .ncore-stats .wp-block-column { border-right:0; border-bottom:1px solid var(--line); } .ncore-stats .wp-block-column:last-child { border-bottom:0; } }

/* Dropdown box: any <ul> directly inside a menu item that has children */
li.menu-item-has-children > ul,
li.menu-item-has-children > div,
li.menu-item-has-children > .sub-menu {
    width: 300px !important;
    min-width: 240px !important;
    max-width: 240px !important;
    padding: 12px 0 !important;
    background: #fff !important;
    border: 1px solid #eef0f3 !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12) !important;
    text-align: left !important;
    left: 0 !important;
    right: auto !important;
    transform: none !important;
}

/* Items */
li.menu-item-has-children > ul li,
li.menu-item-has-children > .sub-menu li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

li.menu-item-has-children > ul li a,
li.menu-item-has-children > .sub-menu li a {
    width: 100% !important;
    padding: 12px 22px !important;
    text-align: left !important;
    align-items: flex-start !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    box-sizing: border-box;
}

li.menu-item-has-children > ul li a:hover {
    background: #f6f7f9;
}

/* Description */
li.menu-item-has-children .menu-description {
    text-align: left !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    color: #777 !important;
    margin-top: 3px !important;
    white-space: normal !important;
}


.hero {
  background-color: #ffffff !important;
  background-image:
    radial-gradient(rgba(134, 149, 169, 0.55) 1.5px, transparent 1.5px),
    linear-gradient(180deg, #f3f6fb 0%, #ffffff 100%) !important;
  background-size: 28px 28px, 100% 100% !important;
  border-bottom: 1px solid #dfe1e5 !important;
  padding-bottom: 64px;
}
.hero > * {
  background: transparent;
}
