:root{--blue:#17458f;--blue-d:#0f3270;--blue2:#1f5bb8;--gold:#f7a81b;--gold2:#d98e00;--soft:#f5f6f8;--ink:#262a30;--mut:#5a6068;--line:#e1e4e8;--r:16px;--sh:0 10px 30px rgba(23,69,143,.10);--sh2:0 18px 44px rgba(23,69,143,.18);--f-head:'Open Sans',Arial,sans-serif;--f-body:Georgia,Arial,sans-serif}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{font-family:var(--f-body);color:var(--ink);line-height:1.7;background:#fff;font-size:17px;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--f-head);color:var(--blue);line-height:1.2;font-weight:700}
h1{font-size:clamp(2.2rem,5vw,3.6rem)}h2{font-size:clamp(1.7rem,3.4vw,2.4rem);margin-bottom:.7rem}h3{font-size:1.2rem;margin-bottom:.35rem}
p{margin-bottom:1rem}a{color:var(--blue)}img{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:6px}.topbar :focus-visible,.hero :focus-visible,.band :focus-visible,.page-head :focus-visible,.sec.dark :focus-visible,.ftr :focus-visible,.marquee :focus-visible,.intro :focus-visible{outline-color:var(--gold)}
.skip{position:absolute;left:-999px;top:8px;background:#fff;padding:10px 16px;z-index:200;border-radius:8px}.skip:focus{left:8px}
.ic{flex:none}.wrap{max-width:1180px;margin:auto;padding:0 24px}.narrow{max-width:800px}.center{text-align:center}.center .ic{color:var(--blue)}
.eyebrow{display:flex;align-items:center;gap:10px;font-family:var(--f-head);font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:.7rem}.eyebrow::before{content:"";width:28px;height:3px;border-radius:2px;background:var(--gold);flex:none}.center .eyebrow{justify-content:center}.eyebrow.light{color:var(--gold)}
.lead{font-size:1.2rem;color:var(--mut)}.lead.strong{color:var(--blue);font-weight:600}
/* top bar + header */
.topbar{background:var(--blue);color:#e6edf9;font-size:.82rem}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;min-height:38px;gap:16px}
.topbar a{color:#e6edf9;text-decoration:none;display:inline-flex;gap:7px;align-items:center;margin-right:18px}.tb-r a{margin:0 0 0 14px}.topbar a:hover{color:#fff}
.hdr{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);transition:box-shadow .3s}.hdr.sh{box-shadow:0 6px 24px rgba(15,50,112,.14)}
.bar{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:12px}
.brand{display:flex;gap:11px;align-items:center;text-decoration:none}.brand img{border-radius:8px}.wheel{color:var(--gold2);display:grid;transition:transform .9s}.brand:hover .wheel{transform:rotate(180deg)}
.brand b{display:block;font-family:var(--f-head);color:var(--blue);font-size:1rem;line-height:1.1}.brand small{color:var(--mut);font-family:var(--f-head);font-size:.78rem;font-weight:400}
.nav{display:flex;align-items:center;gap:2px}.nav>a,.dd-t{padding:9px 12px;text-decoration:none;color:var(--blue);font-family:var(--f-head);font-weight:400;font-size:.95rem;border-radius:10px}
.nav>a:hover,.nav>a.on,.dd-t:hover,.dd-t.on{background:var(--soft);color:var(--blue);box-shadow:inset 0 -3px 0 var(--gold)}
.dd{position:relative;display:flex;align-items:center}.dd-b{background:none;border:0;cursor:pointer;color:var(--blue);padding:6px 2px;margin-left:-6px;display:grid}
.menu{position:absolute;top:100%;left:0;min-width:270px;background:#fff;border-radius:14px;box-shadow:var(--sh2);padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;border:1px solid var(--line)}
.menu a{display:block;padding:10px 14px;border-radius:9px;text-decoration:none;color:var(--blue);font-family:var(--f-head);font-weight:400;font-size:.93rem}.menu a:hover{background:var(--soft);color:var(--blue)}
.dd:hover .menu,.dd:focus-within .menu,.dd.open .menu{opacity:1;visibility:visible;transform:none}
.nav .btn{margin-left:8px}.burger{display:none;background:none;border:0;color:var(--blue);cursor:pointer;padding:8px}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:999px;background:var(--blue);color:#fff!important;font-family:var(--f-head);font-size:.98rem;line-height:1.2;font-weight:700;text-decoration:none;border:2px solid var(--blue);cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(23,69,143,.3);background:var(--blue2)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:var(--ink)!important}.btn.gold:hover{background:#ffb93a;border-color:#ffb93a;box-shadow:0 10px 22px rgba(247,168,27,.4)}
.btn.ghost{background:transparent;border-color:rgba(255,255,255,.7)}.btn.ghost:hover{background:rgba(255,255,255,.14)}
.btn.ghost-dark{background:transparent;color:var(--blue)!important;border-color:var(--blue)}.btn.ghost-dark:hover{background:var(--blue);color:#fff!important}
.btn.sm{padding:9px 20px;font-size:.92rem}.actions{display:flex;gap:12px;flex-wrap:wrap}.actions.mid{justify-content:center}
/* photos */
.photo{border-radius:var(--r);overflow:hidden;background:var(--soft);aspect-ratio:4/3}.photo img{width:100%;height:100%;object-fit:cover}
.photo.ph{display:grid;place-content:center;justify-items:center;gap:10px;text-align:center;color:#7d8696;background:linear-gradient(135deg,#f1f3f6,#fbf3dd);border:2px dashed #c9ced6;padding:14px}
.ph figcaption{font-size:.74rem;color:#4b5563;max-width:300px;line-height:1.4}
.tilt{box-shadow:var(--sh2);transform:rotate(1.2deg);transition:transform .4s}.tilt:hover{transform:none}
.banner{border-radius:0;aspect-ratio:21/8;max-height:420px}
/* hero */
.hero{position:relative;color:#fff;background:linear-gradient(120deg,var(--blue-d),var(--blue) 60%,var(--blue2));overflow:hidden;min-height:620px;display:flex;align-items:center}
.hero-bg{position:absolute;inset:-15% 0;will-change:transform;border-radius:0;aspect-ratio:auto;border:0;opacity:.55}.hero-bg img{object-position:center}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,50,112,.92) 0%,rgba(15,50,112,.7) 50%,rgba(15,50,112,.25) 100%)}
.hero .ph{background:none;border:0}.hero .ph .ic{display:none}.hero .ph figcaption{display:none}
.hero-in{position:relative;z-index:2;padding:90px 24px;width:100%}.hero-copy{max-width:720px}
.hero h1{color:#fff;margin-bottom:1rem;font-size:clamp(2.3rem,5.4vw,4rem)}.hero h1 em{font-style:normal;color:var(--gold);display:block}
.hero .tag{font-size:1.35rem;color:#e6edf9;margin-bottom:1.8rem;font-family:var(--f-body);font-style:italic}
.scroll{position:absolute;z-index:3;left:50%;bottom:22px;transform:translateX(-50%);color:#fff;animation:bob 1.8s infinite}
@keyframes bob{50%{transform:translate(-50%,8px)}}
/* stats */
.stats{background:#fff;margin-top:-52px;position:relative;z-index:5}.stats .grid{background:#fff;border-radius:20px;box-shadow:var(--sh2);padding:30px 18px}
.stat{text-align:center;padding:6px 10px}.stat strong{display:block;font-family:var(--f-head);font-size:2.3rem;color:var(--blue);line-height:1.1}.stat span{color:var(--mut);font-size:.9rem;font-weight:600}
/* sections */
.sec{padding:84px 0}.sec.alt{background:var(--soft)}.sec.tight{padding:44px 0}
.sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:36px}.sub{color:var(--mut);max-width:60ch;margin:0}
.grid{display:grid;gap:26px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g5{grid-template-columns:repeat(5,1fr);gap:18px}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.split.top{align-items:start;grid-template-columns:1.5fr 1fr}
.checks{list-style:none;padding:0;margin:0 0 1.4rem;display:grid;gap:9px}.checks li{display:flex;gap:10px;align-items:flex-start}.checks .ic{color:#fff;background:var(--blue);border-radius:50%;padding:3px;margin-top:3px;width:22px;height:22px}
.checks.two{grid-template-columns:1fr 1fr}.checks.big{font-size:1.1rem;gap:14px}
/* cards */
.cause{position:relative;display:block;border-radius:var(--r);overflow:hidden;text-decoration:none;box-shadow:var(--sh);transition:transform .3s,box-shadow .3s;background:#fff}
.cause:hover,.pcard:hover,.ncard:hover{transform:translateY(-6px);box-shadow:var(--sh2)}
.cause .photo{border-radius:0;aspect-ratio:3/4}.cause::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(15,50,112,.92))}
.cause h3{position:absolute;z-index:2;left:16px;right:16px;bottom:14px;color:#fff;font-size:1.1rem;margin:0}
.cause-ic{position:absolute;z-index:2;top:12px;left:12px;background:var(--gold);color:var(--ink);width:40px;height:40px;border-radius:12px;display:grid;place-items:center}
.cause-ic.inline{position:static;margin-bottom:10px}
.pcard,.ncard{display:flex;flex-direction:column;border-radius:var(--r);overflow:hidden;background:#fff;box-shadow:var(--sh);text-decoration:none;color:inherit;transition:transform .3s,box-shadow .3s;border:1px solid var(--line)}
.pcard .photo,.ncard .photo{border-radius:0}.pc-b{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1}.pc-b p{color:var(--mut);font-size:.95rem}
.chip{align-self:flex-start;background:var(--soft);color:var(--blue);font-size:.74rem;font-weight:700;padding:4px 12px;border-radius:99px;margin-bottom:10px}
.ncard time{color:var(--blue);font-weight:700;font-size:.82rem;margin-bottom:6px}
.more{margin-top:auto;display:inline-flex;gap:6px;align-items:center;font-weight:700;color:var(--blue)}.pcard:hover .more .ic,.ncard:hover .more .ic{transform:translateX(4px)}.more .ic{transition:.2s}
.team,.member{text-align:center}.avatar{width:100%;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;background:linear-gradient(145deg,var(--blue),var(--blue));display:grid;place-items:center;margin-bottom:14px;box-shadow:var(--sh);position:relative}
.avatar img{width:100%;height:100%;object-fit:cover}.avatar span{font-family:var(--f-head);font-size:3.4rem;color:var(--gold);letter-spacing:.04em}
.team .role{color:var(--blue);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;margin:0 0 2px}.team h3,.member h3{font-size:1.05rem}
.members .avatar{aspect-ratio:1/1;border-radius:50%;width:120px;margin:0 auto 12px}.members .avatar span{font-size:2rem}.members h3{font-size:.95rem}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px;box-shadow:var(--sh);margin-bottom:20px}.panel.big{padding:40px}
.p-ic{width:54px;height:54px;border-radius:16px;background:var(--soft);color:var(--blue);display:grid;place-items:center;margin-bottom:14px}
.dir{display:flex;gap:10px;align-items:center;background:var(--soft);padding:10px 16px;border-radius:12px}.dir span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--mut);font-weight:700}
.act{background:#fff;border-radius:var(--r);padding:32px;box-shadow:var(--sh);border-top:4px solid var(--gold);display:flex;flex-direction:column;gap:6px;align-items:flex-start}.act .ic{color:var(--blue)}.act .btn{margin-top:auto}
.info{display:flex;gap:16px;align-items:flex-start;background:#fff;padding:26px;border-radius:var(--r);box-shadow:var(--sh);border:1px solid var(--line)}
.info>.ic{background:var(--soft);color:var(--blue);padding:12px;width:50px;height:50px;border-radius:14px}.info h3{font-size:1.05rem}.info p{margin:0;word-break:break-word}
.fi{display:flex;gap:10px;align-items:flex-start}.fi .ic{color:var(--blue);margin-top:5px}
/* band */
.band{position:relative;background:linear-gradient(120deg,var(--blue-d),var(--blue));color:#fff;padding:90px 0;text-align:center;overflow:hidden}
.band-bg{position:absolute;inset:-20% 0;will-change:transform;border-radius:0;aspect-ratio:auto;opacity:.3;border:0}.band .ph{background:none;border:0}.band .ph figcaption,.band .ph .ic{display:none}
.band-in{position:relative;z-index:2;max-width:860px}.band h2{color:#fff;font-size:clamp(1.5rem,3.4vw,2.4rem);margin-bottom:1.6rem}.band .actions{justify-content:center}
/* page head */
.page-head{background:linear-gradient(120deg,var(--blue-d),var(--blue));color:#fff;padding:64px 0 56px;position:relative;overflow:hidden}
.page-head::after{content:"";position:absolute;right:-90px;top:-90px;width:360px;height:360px;border-radius:50%;border:48px solid rgba(247,168,27,.16)}
.page-head h1{color:#fff;font-size:clamp(2rem,4.4vw,3rem)}.page-head .lead{color:#d6e2f8;max-width:65ch;margin-top:.8rem}.page-head .eyebrow{color:var(--gold)}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:.84rem;color:#d6e2f8;margin-bottom:18px}.crumbs a{color:#dfe9fb;text-decoration:none}.crumbs a:hover{text-decoration:underline}
/* prose + sidebar */
.prose p{max-width:70ch}.prose h3.up,h3.up{margin-top:1.6rem}.prose .lead{max-width:none}
.sign{font-weight:700;color:var(--blue);font-family:var(--f-head)}.post-img{margin-bottom:28px;aspect-ratio:16/9}
.side{position:sticky;top:104px}.side .photo{margin-bottom:20px}
.facts div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.facts dt{color:var(--mut);font-weight:600}.facts dd{font-weight:700;text-align:right;color:var(--blue)}.panel .btn{margin-top:16px}
.defs div{padding:14px 18px;border-left:4px solid var(--gold);background:var(--soft);border-radius:0 12px 12px 0;margin-bottom:12px}.defs dt{font-weight:700;color:var(--blue)}
.pager{display:flex;justify-content:space-between;gap:20px}.pager a{text-decoration:none;display:block}.pager small{display:block;color:var(--mut);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700}.pager b{font-family:var(--f-head);color:var(--blue);font-size:1.1rem}.pager a:hover b{color:var(--blue)}.pager .r{text-align:right}
.quote blockquote{font-family:var(--f-body);font-style:italic;font-size:clamp(1.4rem,3vw,2rem);color:var(--blue)}.quote cite{display:block;font-size:1rem;color:var(--blue);font-style:normal;margin-top:10px;font-family:var(--f-head);font-weight:700}
.pay .facts dd{font-size:1.1rem}.back{margin-top:32px}
/* gallery + lightbox */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:14px}.g-item{display:block;border-radius:12px;overflow:hidden;aspect-ratio:4/3;background:var(--soft)}
.g-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.g-item:hover img{transform:scale(1.07)}
.hint{background:#fff7e0;border:1px dashed var(--gold);padding:10px 14px;border-radius:10px;font-size:.85rem}
.lb{position:fixed;inset:0;background:rgba(5,15,35,.92);z-index:300;display:none;align-items:center;justify-content:center;padding:20px}.lb.on{display:flex}.lb img{max-height:88vh;max-width:92vw;border-radius:10px}
.lb button{position:absolute;background:rgba(255,255,255,.15);border:0;color:#fff;width:46px;height:46px;border-radius:50%;font-size:1.4rem;cursor:pointer}.lb .x{top:18px;right:18px}.lb .p{left:18px}.lb .n{right:18px}
/* forms */
.form{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:30px;box-shadow:var(--sh);margin-top:24px}.form label{display:block;font-family:var(--f-head);font-weight:700;margin:14px 0 6px;font-size:.93rem;color:var(--blue)}
.form input[type=text],.form input[type=email],.form input[type=tel],.form textarea{width:100%;padding:13px 15px;border:1.5px solid #c9ced6;border-radius:12px;font:inherit;background:#fff;transition:border .2s,box-shadow .2s}
.form input:focus,.form textarea:focus{outline:0;border-color:var(--blue);box-shadow:0 0 0 4px rgba(23,69,143,.14)}.form .bad{border-color:#d22f2f}.msg{color:#b42020;font-size:.84rem;display:block;margin-top:4px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form .btn{margin-top:20px}.fine{font-size:.82rem;color:var(--mut);margin:14px 0 0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.seg{border:0;display:flex;gap:10px;flex-wrap:wrap;padding:0}.seg legend{font-weight:700;color:var(--blue);margin-bottom:8px;padding:0}.seg label{margin:0}.seg input{position:absolute;opacity:0}
.seg span{display:inline-block;padding:10px 20px;border:1.5px solid #c9ced6;border-radius:99px;cursor:pointer;font-weight:600;transition:.2s}.seg input:checked+span{background:var(--blue);color:#fff;border-color:var(--blue)}.seg input:focus-visible+span{outline:3px solid var(--gold)}
.alert{padding:14px 18px;border-radius:12px;margin-bottom:6px;font-weight:600}.alert.ok{background:#e5f7ec;color:#14683a}.alert.err{background:#fdeaea;color:#a02020}
/* footer */
.ftr{background:var(--blue);color:#dbe5f6;padding-top:70px}.ftr-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.3fr;gap:40px}
.ftr h4{color:#fff;font-size:1.05rem;margin-bottom:16px}.ftr a{color:#dbe5f6;text-decoration:none;display:block;padding:3px 0}.ftr a:hover{color:var(--gold)}
.ftr .fi{margin-bottom:10px}.ftr .fi .ic{color:var(--gold)}.ftr .fi a{display:inline}.f-brand .wheel{color:var(--gold);margin-bottom:10px}
.soc{display:flex;gap:10px;margin-top:6px}.soc a{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;padding:0;transition:.2s}.soc a:hover{background:var(--gold);color:var(--ink)}
.copy{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding-top:22px;padding-bottom:26px;font-size:.88rem}
.totop{position:fixed;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;background:var(--gold);color:var(--ink);border:0;cursor:pointer;box-shadow:var(--sh2);opacity:0;visibility:hidden;transition:.3s;z-index:90;display:grid;place-items:center}.totop.on{opacity:1;visibility:visible}
/* motion */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s}.js .rv.in{opacity:1;transform:none}.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.js .tilt.rv.in{transform:rotate(1.2deg)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .rv{opacity:1;transform:none}.js .wi,.js .sw{transform:none;opacity:1}}
@media (max-width:1020px){.g4{grid-template-columns:repeat(2,1fr)}.g5{grid-template-columns:repeat(3,1fr)}.ftr-grid{grid-template-columns:1fr 1fr}
 .burger{display:block}.nav{position:fixed;inset:76px 0 0 0;background:#fff;flex-direction:column;align-items:stretch;padding:18px 24px 60px;gap:4px;overflow:auto;transform:translateX(100%);transition:transform .3s;visibility:hidden}
 .nav.open{transform:none;visibility:visible}.nav>a,.dd-t{padding:13px 12px;font-size:1.05rem}.dd{flex-wrap:wrap}.dd-t{flex:1}.dd-b{padding:10px 14px;margin:0}
 .menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;width:100%;display:none;padding:0 0 8px 14px;min-width:0}.dd.open .menu{display:block}.dd:hover .menu{display:none}.dd.open:hover .menu{display:block}
 .nav .btn{margin:10px 0 0;justify-content:center}}
@media (max-width:1020px){.topbar{display:none}.hdr{backdrop-filter:none;background:#fff}}
@media (max-width:820px){.split,.split.top{grid-template-columns:1fr;gap:34px}.g3,.g2{grid-template-columns:1fr}.side{position:static}.sec{padding:60px 0}.row2{grid-template-columns:1fr}.checks.two{grid-template-columns:1fr}.tb-l a:nth-child(2){display:none}.hero{min-height:540px}}
@media (max-width:560px){.g4,.g5{grid-template-columns:repeat(2,1fr)}.ftr-grid{grid-template-columns:1fr}.stats .grid{padding:20px 6px}.stat strong{font-size:1.7rem}.pager{flex-direction:column}.pager .r{text-align:left}}

/* ===== premium motion layer ===== */
.progress{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),#ffd36b);transform-origin:0 50%;transform:scaleX(0);z-index:400}
.intro{display:none}.intro-on .intro{position:fixed;inset:0;z-index:500;display:grid;place-content:center;justify-items:center;gap:16px;background:var(--blue);color:#fff;transition:transform .9s cubic-bezier(.77,0,.18,1)}
.intro .ic{width:88px;height:88px;color:var(--gold);animation:spin 1.6s linear infinite}.intro p{font-family:var(--f-head);font-size:1.3rem;letter-spacing:.12em;margin:0}.intro.out{transform:translateY(-100%)}
@keyframes spin{to{transform:rotate(360deg)}}
.js .stx .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em}
.js .stx .wi{display:inline-block;transform:translateY(112%) rotate(4deg);transition:transform .9s cubic-bezier(.2,.8,.2,1)}.js .stx.in .wi{transform:none}
.js [data-scramble]{min-height:1.2em}
.tiles{position:absolute;inset:0;overflow:hidden;pointer-events:none}.tiles i{position:absolute;background-repeat:no-repeat;transition:transform 1.1s cubic-bezier(.2,.9,.2,1),opacity .6s;will-change:transform}
.photo{position:relative}.photo.assembling>img{opacity:0}.photo.assembling{background:var(--soft)}
.pcard img,.ncard img{transition:transform .8s cubic-bezier(.2,.8,.2,1)}.pcard:hover img,.ncard:hover img{transform:scale(1.08)}
.banner{position:relative}.banner img{transform:scale(1.2)}
.cur{position:fixed;left:-20px;top:-20px;width:40px;height:40px;border:2px solid var(--gold);border-radius:50%;pointer-events:none;z-index:450;opacity:0;transition:opacity .3s,width .25s,height .25s,margin .25s,background .25s}
.cur.on{opacity:.85}.cur.hov{width:64px;height:64px;margin:-12px 0 0 -12px;background:rgba(247,168,27,.18)}
.hero-wheel{position:absolute;z-index:1;right:-6%;top:50%;margin-top:-260px;width:520px;height:520px;color:rgba(255,255,255,.07);will-change:transform}.hero-wheel .ic{width:100%;height:100%;stroke-width:.5}
.orb{position:absolute;z-index:1;pointer-events:none}.orb i{display:block;border-radius:50%;animation:float 7s ease-in-out infinite}
.orb.o1{right:18%;top:16%}.orb.o1 i{width:130px;height:130px;border:2px solid rgba(247,168,27,.55)}
.orb.o2{right:30%;bottom:14%}.orb.o2 i{width:56px;height:56px;background:var(--gold);opacity:.85;animation-delay:-3s}
.orb.o3{right:8%;bottom:24%}.orb.o3 i{width:210px;height:210px;border:1px dashed rgba(255,255,255,.3);animation-duration:11s}
@keyframes float{50%{transform:translateY(-22px) scale(1.05)}}
.marquee{overflow:hidden;background:var(--blue);padding:30px 0}.mq-track{display:flex;width:max-content;animation:mq 40s linear infinite}.marquee:hover .mq-track{animation-play-state:paused}
.mq-item{display:flex;align-items:center;gap:30px;padding-right:30px;font-family:var(--f-head);font-weight:700;font-size:clamp(1.8rem,4.4vw,3.2rem);color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.6);white-space:nowrap}
.mq-item .ic{width:38px;height:38px;color:var(--gold)}@keyframes mq{to{transform:translateX(-50%)}}
.sec.dark{background:linear-gradient(160deg,var(--blue-d),var(--blue));color:#fff;padding:120px 0}.sec.dark .eyebrow{color:var(--gold)}
.scrub{font-family:var(--f-head);font-weight:700;font-size:clamp(1.9rem,4.4vw,3.4rem);line-height:1.22;color:#fff;max-width:22em;margin-bottom:2rem}
.js .sw{opacity:.2;transition:opacity .4s}.js .sw.lit{opacity:1}
@media (max-width:820px){.hero-wheel,.orb.o3{display:none}.orb.o1{right:6%;top:10%}.orb.o1 i{width:80px;height:80px}.sec.dark{padding:80px 0}}
.photo.hero-bg,.photo.band-bg{position:absolute}

/* ===== Rotary brand typography =====
   Headings, navigation, buttons and labels -> Open Sans (Bold for headings & buttons)
   Paragraphs / body text                   -> Georgia
   Fallback                                 -> Arial                                   */
.topbar,.crumbs,.chip,.stat span,.ncard time,.team .role,.pager small,.facts dt,.facts dd,.dir span,.fine,.msg,.alert,.hint,.ph figcaption,.copy,.seg legend,.seg span,.quote cite,.info p,.info h3,.pay .facts dd,.ftr h4,.ftr a,.ftr .fi,.more{font-family:var(--f-head)}
.ftr-grid p,.f-brand p{font-family:var(--f-body)}
.more,.chip,.team .role,.ncard time,.pager small,.dir span,.seg span{font-weight:700}
.info p,.facts dd{font-weight:600}
