*{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#14110f;--or:#ff9764;--cr:#fce4be;--pe:#f9d6af;--teal:#0bb5c4;--grn:#1fbf75;--yel:#ffd84d;--head:'Playfair Display',Georgia,serif;--body:'DM Sans',system-ui,sans-serif;--mono:'Space Mono',ui-monospace,monospace}
html{scroll-behavior:smooth}
body{font-family:var(--body);color:var(--ink);background:var(--cr);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}img{max-width:100%}
section,header{scroll-margin-top:70px}
.c{max-width:1200px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:var(--head);font-weight:900;letter-spacing:-.03em;line-height:.95}
.mono{font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.ol{color:transparent;-webkit-text-stroke:2.5px var(--ink)}
@supports not (-webkit-text-stroke:1px #000){.ol{color:var(--ink)}}
.prog{position:fixed;left:0;top:0;height:4px;width:100%;z-index:70;background:linear-gradient(90deg,var(--or),var(--yel),var(--teal));transform-origin:0 50%;transform:scaleX(0)}
/* nav */
.bar{position:sticky;top:0;z-index:50;background:var(--cr);border-bottom:2.5px solid var(--ink)}
.bar .c{display:flex;align-items:center;justify-content:space-between;height:62px;gap:12px}
.brand{font-family:var(--mono);font-weight:700;text-decoration:none;font-size:1.05rem;white-space:nowrap}
.brand i{font-style:normal;color:#fff;background:var(--ink);padding:2px 7px;margin-right:6px;border-radius:6px}
.nv{display:flex;gap:26px;font-family:var(--mono);font-size:.82rem;text-transform:uppercase}
.nv a{text-decoration:none;padding:4px 0}
.nv a[aria-current]{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2.5px}@media (hover:hover) and (pointer:fine){.nv a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2.5px}}
.live{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--ink);border-radius:99px;padding:5px 14px;white-space:nowrap}
.live:before,.now:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--grn);animation:pl 1.6s infinite}
@keyframes pl{0%{box-shadow:0 0 0 0 rgba(31,191,117,.7)}100%{box-shadow:0 0 0 9px rgba(31,191,117,0)}}
/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border:2.5px solid var(--ink);border-radius:14px;font-weight:700;font-size:.95rem;text-decoration:none;cursor:pointer;font-family:var(--body);box-shadow:4px 4px 0 var(--ink);transition:translate .15s,box-shadow .15s;background:#fff;color:var(--ink)}
@media (hover:hover) and (pointer:fine){.btn:hover{translate:-2px -2px;box-shadow:7px 7px 0 var(--ink)}}.btn:active{translate:3px 3px;box-shadow:1px 1px 0 var(--ink)}
.btn svg{width:20px;height:20px;flex:none}
.b-in{background:#0a66c2;color:#fff}.b-yt{background:#ff3b30;color:#fff}.b-tm{background:var(--yel)}.b-dk{background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--or)}.b-wh{background:#fff}
.cta{display:flex;flex-wrap:wrap;gap:14px}
/* reveal */
.js .rv{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}
.js .rv.on{opacity:1;transform:none}
/* sparkles */
.spk{position:absolute;font-style:normal;font-size:1.7rem;line-height:1;animation:tw 3.2s ease-in-out infinite;pointer-events:none}
@keyframes tw{50%{scale:1.5;rotate:25deg;opacity:.45}}
/* home hero */
.hero{position:relative;overflow:hidden;padding:52px 0 72px;background:radial-gradient(circle at 78% 30%,#ffb48a 0,transparent 46%),var(--cr)}
.hero .c{display:grid;grid-template-columns:1.25fr .85fr;gap:40px;align-items:center;position:relative}
.now{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--cr);padding:9px 16px;border-radius:99px;margin-bottom:22px}
.name{font-size:clamp(3.6rem,10.4vw,9rem);line-height:.84}
.role{margin:26px 0 26px;font-size:clamp(1.3rem,2.6vw,1.9rem);font-family:var(--head);font-weight:700}
.role span{display:inline-block;background:var(--yel);border:2.5px solid var(--ink);padding:0 12px;rotate:-2deg;min-width:7ch;text-align:center;transition:opacity .25s}





.pw{position:relative;max-width:420px;margin:0 auto;width:100%}
.arch{position:relative;aspect-ratio:607/700;border:3px solid var(--ink);border-radius:999px 999px 28px 28px;overflow:hidden;background:#fff;box-shadow:12px 12px 0 var(--ink)}
.arch img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;display:block}
.pw:before{content:"";position:absolute;inset:-18px 18px 18px -18px;border-radius:999px 999px 28px 28px;background:var(--or);border:3px solid var(--ink)}
.bdg{position:absolute;right:-34px;bottom:34px;width:128px;height:128px;animation:sp 18s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.bdg text{font-family:var(--mono);font-weight:700;font-size:11px;fill:var(--ink)}
/* marquee */
.mq{background:var(--ink);color:var(--cr);border-block:2.5px solid var(--ink);overflow:hidden;white-space:nowrap}
.mq div{display:inline-block;padding:14px 0;animation:mq 30s linear infinite;font-family:var(--head);font-weight:700;font-size:1.6rem}
.mq span{color:var(--or);margin:0 22px}
@keyframes mq{to{transform:translateX(-50%)}}
/* about */
.about{background:#fff;padding:100px 0;background-image:radial-gradient(#e9d8c4 1.2px,transparent 1.2px);background-size:22px 22px}
.hd{margin-bottom:48px}.hd h2{font-size:clamp(3rem,8vw,6.6rem);margin-top:10px}
.gr{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.cd{border:2.5px solid var(--ink);border-radius:22px;padding:26px 26px 28px;box-shadow:7px 7px 0 var(--ink);transition:translate .2s,rotate .2s,box-shadow .2s}
@media (hover:hover) and (pointer:fine){.cd:hover{translate:-3px -3px;rotate:-.6deg;box-shadow:11px 11px 0 var(--ink)}}
.cd:nth-child(1){background:var(--or)}.cd:nth-child(2){background:var(--cr)}.cd:nth-child(3){background:#d5f3f5}.cd:nth-child(4){background:var(--pe)}
.tg{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.tg b{background:var(--ink);color:#fff;padding:3px 10px;border-radius:6px}
.tg em{font-style:normal;background:#fff;border:2px solid var(--ink);padding:1px 9px;border-radius:99px}
.cd p{font-size:1.06rem}
/* recognitions teaser */
.rc{background:var(--yel);border-top:2.5px solid var(--ink);padding:100px 0;overflow:hidden}
.rc-g{display:grid;grid-template-columns:1fr 1.05fr;gap:56px;align-items:center}
.rc h2{font-size:clamp(3rem,7.6vw,6.4rem);margin:10px 0 20px}
.rc p.lead{font-size:1.15rem;max-width:30em;margin-bottom:8px}
.st3{display:flex;flex-wrap:wrap;gap:14px;margin:26px 0 30px}
.st3 div{background:#fff;border:2.5px solid var(--ink);border-radius:16px;padding:12px 20px;box-shadow:4px 4px 0 var(--ink)}
.st3 b{font-family:var(--head);font-size:2.6rem;display:block;line-height:1}
.st3 span{font-size:.85rem}
.fan{position:relative;height:460px}
.fan a{position:absolute;width:56%;background:#fff;border:3px solid var(--ink);padding:10px 10px 36px;box-shadow:8px 8px 0 var(--ink);transition:rotate .3s,scale .3s}
.fan a img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#eee}
.fan a span{position:absolute;bottom:8px;left:12px;font-family:var(--mono);font-size:.72rem;text-transform:uppercase}
.fan a:nth-child(1){left:0;top:36px;rotate:-7deg}
.fan a:nth-child(2){left:22%;top:0;rotate:3deg;z-index:2}
.fan a:nth-child(3){right:0;top:130px;rotate:9deg;z-index:1}
@media (hover:hover) and (pointer:fine){.fan a:hover{rotate:0deg;scale:1.06;z-index:5}}
/* talks */
.tk{background:var(--ink);color:var(--cr);padding:100px 0;border-top:2.5px solid var(--ink)}
.tk h2{font-size:clamp(3.4rem,10vw,8.4rem)}.tk .mono{color:var(--or)}
.st{margin-top:44px;display:grid;grid-template-columns:1.5fr 1fr;gap:28px}
.pl{position:relative;display:block;aspect-ratio:16/9;border:3px solid var(--cr);border-radius:22px;overflow:hidden;background:linear-gradient(135deg,var(--or),#ff6a3d 55%,var(--yel));box-shadow:10px 10px 0 var(--or);text-decoration:none;color:var(--ink)}
.pb{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;font-family:var(--head)}
.pb i{width:96px;height:96px;border-radius:50%;background:#fff;border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);display:grid;place-items:center;transition:transform .2s}
@media (hover:hover) and (pointer:fine){.pl:hover .pb i{transform:scale(1.1) rotate(-6deg)}}
.pb i:after{content:"";border-left:28px solid var(--ink);border-block:18px solid transparent;margin-left:8px}
.pb span{font-size:clamp(1.3rem,3vw,2.2rem);font-weight:900;text-align:center;line-height:1.05;padding:0 20px}
.pb small{font-family:var(--mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.sd{display:flex;flex-direction:column;gap:18px;justify-content:center}
.sd p{font-size:1.1rem;opacity:.85}
.ch{display:flex;flex-wrap:wrap;gap:10px}
.ch span{border:2px solid var(--cr);border-radius:99px;padding:6px 14px;font-size:.88rem}
.sd .btn{align-self:flex-start}
/* contact */
.ct{padding:100px 0;background:var(--or);border-top:2.5px solid var(--ink)}
.ch2{text-align:center;margin-bottom:44px}.ch2 h2{font-size:clamp(3rem,8vw,6.6rem);margin:12px 0 22px}.ch2 p{font-size:1.2rem;max-width:34em;margin:0 auto}
.cg{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.cg h3{font-size:clamp(2rem,4vw,3rem);margin-bottom:16px}
.cg p.side{font-size:1.1rem;margin-bottom:24px;max-width:28em}
form{background:#fff;border:3px solid var(--ink);border-radius:22px;box-shadow:10px 10px 0 var(--ink);overflow:hidden;rotate:1deg}
.fh{background:var(--ink);color:var(--cr);padding:11px 22px;display:flex;justify-content:space-between}
.fh b{color:var(--grn)}
.fb{padding:6px 26px 28px}
form h3{font-family:var(--body);font-size:1.3rem;margin:18px 0 2px;letter-spacing:0;font-weight:700}
label{display:block;font-family:var(--mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;margin:16px 0 6px}
input,textarea{width:100%;border:2.5px solid var(--ink);border-radius:12px;padding:12px 14px;font:1rem var(--body);background:#fffdf8;transition:box-shadow .15s,translate .15s}
input:focus,textarea:focus{outline:0;box-shadow:4px 4px 0 var(--teal);translate:-2px -2px}
textarea{height:120px;resize:vertical}
form button{margin-top:22px;width:100%;justify-content:center;background:var(--teal);color:var(--ink)}
.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.note{font-size:.95rem;margin-top:14px;padding:12px 14px;border:2.5px solid var(--ink);border-radius:12px;line-height:1.45}
.note.ok{background:#d9f7e8}.note.wait{background:var(--cr)}.note.err{background:#ffe3df}
.note .nl{display:inline-block;margin-top:4px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
/* logo scroller */
.lw{background:#fff;border:3px solid var(--ink);border-radius:22px;box-shadow:10px 10px 0 var(--ink);padding:24px 0 18px;margin-bottom:72px;overflow:hidden}
.lwt{text-align:center;margin-bottom:14px;opacity:.7}
.lm{overflow:hidden;margin-top:4px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.lt{display:flex;width:max-content;background:#fff;animation:lmq 46s linear infinite}
.lt.b{animation-direction:reverse;animation-duration:52s}
.cp{display:contents}
@media (hover:hover) and (pointer:fine){.lw:hover .lt{animation-play-state:paused}}
.lgo{flex:none;display:block;width:280px;height:88px;margin-right:26px;background-image:url(https://static.wixstatic.com/media/b341e1_d5eedd4c654d405f99430869c16e8d7c~mv2.png);background-repeat:no-repeat;background-size:300% 600%;background-position:calc(var(--c)*50%) calc(var(--r)*20%);mix-blend-mode:multiply}
@keyframes lmq{to{transform:translateX(-50%)}}
/* footer */
.ft{background:var(--ink);color:var(--cr);padding:30px 0}
.ft .c{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.fl{display:flex;gap:22px;flex-wrap:wrap}.fl a{text-decoration:none}@media (hover:hover) and (pointer:fine){.fl a:hover{text-decoration:underline;text-underline-offset:5px}}
/* achievements hero */
.ah{position:relative;overflow:hidden;padding:60px 0 84px;border-bottom:2.5px solid var(--ink);background:radial-gradient(circle at 12% 18%,#ffdcbc 0,transparent 42%),radial-gradient(circle at 92% 72%,#ffb48a 0,transparent 46%),var(--cr)}
.ah .c{position:relative}
.ah h1{font-size:clamp(4rem,13vw,11rem);line-height:.82;margin:14px 0 0}
.ah p.lead{max-width:32em;font-size:1.2rem;margin-top:26px}
.medals{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:22px;margin-top:52px}
.medal{display:flex;align-items:center;gap:20px;background:#fff;border:3px solid var(--ink);border-radius:22px;box-shadow:8px 8px 0 var(--ink);padding:22px;text-decoration:none;transition:translate .2s,box-shadow .2s}
@media (hover:hover) and (pointer:fine){.medal:hover{translate:-3px -3px;box-shadow:12px 12px 0 var(--ink)}}
.medal b{display:block;font-family:var(--head);font-size:1.45rem;line-height:1.05;margin-bottom:6px}
.disc{flex:none;width:100px;height:100px;border-radius:50%;display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:1.55rem;background:radial-gradient(circle at 34% 28%,#fff6c2,var(--yel) 46%,#f0a500);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);animation:bob 4s ease-in-out infinite}
.medal:nth-child(2) .disc{animation-delay:-1s}.medal:nth-child(3) .disc{animation-delay:-2s}.medal:nth-child(4) .disc{animation-delay:-3s}
@keyframes bob{50%{translate:0 -7px}}
/* spotlight sections */
.sp{padding:96px 0;border-bottom:2.5px solid var(--ink)}
.sp.alt{background:#fff;background-image:radial-gradient(#e9d8c4 1.2px,transparent 1.2px);background-size:22px 22px}
.sp-h{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:end;margin-bottom:42px}
.yr{font-family:var(--head);font-weight:900;font-size:clamp(4rem,12vw,9.5rem);line-height:.8;color:transparent;-webkit-text-stroke:2.5px var(--ink)}
.sp-h h2{font-size:clamp(2.2rem,5vw,4rem);margin-top:8px}
.sp-t{display:grid;grid-template-columns:.85fr 1.35fr;gap:44px;align-items:start}
.story{position:sticky;top:88px;background:#fff;border:3px solid var(--ink);border-radius:22px;box-shadow:8px 8px 0 var(--ink);padding:28px}
.story p{font-size:1.08rem;margin-bottom:16px}
.story .chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 18px}
.story .chips span{border:2px solid var(--ink);border-radius:99px;padding:3px 12px;font-size:.85rem;background:var(--cr)}
.story .links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:16px;font-weight:700}
.story .badge{display:inline-flex;align-items:center;gap:8px;background:var(--yel);border:2.5px solid var(--ink);border-radius:12px;padding:6px 12px;font-weight:700;margin-bottom:16px;rotate:-1.5deg}
.mas{column-count:3;column-gap:18px}
.mas figure{break-inside:avoid;margin:0 0 18px;border:3px solid var(--ink);border-radius:16px;overflow:hidden;background:#fff;box-shadow:6px 6px 0 var(--ink);cursor:zoom-in;transition:translate .25s,rotate .25s,box-shadow .25s}
.mas figure:nth-child(3n+1){rotate:-1.2deg}.mas figure:nth-child(3n+2){rotate:1deg}
@media (hover:hover) and (pointer:fine){.mas figure:hover{rotate:0deg;translate:0 -4px;box-shadow:10px 10px 0 var(--ink)}}
.mas img{display:block;width:100%;height:auto;min-height:90px;background:#f1eadf}
.mas.two{column-count:2}
/* champion band */
.chb{background:var(--ink);color:var(--cr);padding:84px 0;text-align:center;overflow:hidden;border-bottom:2.5px solid var(--ink)}
.chb h2{font-size:clamp(2.8rem,9vw,7.4rem);margin:12px 0 14px}
.chb .ol{-webkit-text-stroke-color:var(--cr)}
.chb p{font-size:1.15rem;opacity:.85}
.chb .spk{color:var(--yel)}
/* final call to action */
.fin{background:var(--or);padding:96px 0;text-align:center;border-bottom:2.5px solid var(--ink)}
.fin h2{font-size:clamp(2.6rem,7vw,5.6rem);margin:12px 0 20px}
.fin p{font-size:1.2rem;max-width:32em;margin:0 auto 28px}
.fin .cta{justify-content:center}
/* lightbox */
.lb{position:fixed;inset:0;z-index:100;background:rgba(20,17,15,.93);display:none;align-items:center;justify-content:center;padding:24px}
.lb.on{display:flex}
.lb img{max-width:min(1100px,92vw);max-height:80vh;border:3px solid var(--cr);border-radius:12px;background:#fff;object-fit:contain}
.lb button{position:absolute;width:52px;height:52px;border-radius:50%;border:2.5px solid var(--ink);background:var(--yel);font-size:1.8rem;line-height:1;cursor:pointer;display:grid;place-items:center;color:var(--ink);font-family:var(--body)}
.lb .lb-x{top:18px;right:18px}.lb .lb-p{left:18px;top:50%;translate:0 -50%}.lb .lb-n{right:18px;top:50%;translate:0 -50%}
.lb .lb-c{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:var(--cr)}
@media(prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}*{animation:none!important}html{scroll-behavior:auto}.lm{overflow-x:auto}}
@media(max-width:900px){
.bar .c{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:10px}
.nv{order:3;width:100%;overflow-x:auto;gap:22px;white-space:nowrap}.live{display:none}
.hero{padding:36px 0 56px}.hero .c,.rc-g,.st,.cg,.gr,.sp-t{grid-template-columns:1fr}
.pw{max-width:340px;margin-top:20px}.bdg{right:-10px;width:100px;height:100px}
.about,.tk,.ct,.rc,.sp,.fin,.chb{padding:64px 0}
form{rotate:0deg}.story{position:static}.fan{height:380px}.sp-h{grid-template-columns:1fr;gap:6px}
.mas{column-count:2}.lgo{width:200px;height:63px;margin-right:18px}.lw{padding-top:18px}
.ah{padding:40px 0 60px}.disc{width:84px;height:84px;font-size:1.3rem}
}
@media(max-width:520px){.mas{column-count:1}.mas.two{column-count:1}.fan{height:330px}.fan a{width:62%}}
/* ---- creative layer ---- */
.btn{transition:translate .15s,box-shadow .15s,transform .25s cubic-bezier(.2,.9,.3,1.3)}
.lx{display:inline-block;cursor:default;transition:transform .3s cubic-bezier(.3,1.7,.5,1);animation:drop .8s cubic-bezier(.2,.9,.3,1.25) backwards;animation-delay:calc(var(--i)*55ms)}
@media (hover:hover) and (pointer:fine){.lx:hover{transform:translateY(-.07em) rotate(-6deg) scale(1.07)}}
@keyframes drop{from{opacity:0;transform:translateY(.55em) rotate(10deg)}}
.hero:after,.ah:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(380px circle at var(--mx,72%) var(--my,28%),rgba(255,255,255,.6),transparent 62%)}
.hero .c,.ah .c{z-index:1}
.lgo{transition:transform .25s ease}
@media (hover:hover) and (pointer:fine){.lgo:hover{transform:scale(1.07)}}
.lgo.x{background-image:url(shiftsync.png);background-size:92% auto;background-position:center;background-repeat:no-repeat}
.disc{position:relative;overflow:hidden}
.disc:after{content:"";position:absolute;inset:-30%;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.8) 50%,transparent 60%);translate:-120% 0;animation:shine 3.8s ease-in-out infinite}
@keyframes shine{55%,100%{translate:120% 0}}
.medal:nth-child(2) .disc:after{animation-delay:.6s}.medal:nth-child(3) .disc:after{animation-delay:1.2s}.medal:nth-child(4) .disc:after{animation-delay:1.8s}
/* crossing banner bands */
.xb{position:relative;height:150px;overflow:hidden;background:linear-gradient(var(--ink) 50%,var(--or) 50%)}
.xb+.ct,.xb+.fin{border-top:0}
.bd{position:absolute;left:-5%;width:110%;top:50%;margin-top:-31px;padding:11px 0;border-block:2.5px solid var(--ink);white-space:nowrap;overflow:hidden;font-family:var(--head);font-weight:900;font-size:1.7rem;line-height:1.2}
.bd.b1{background:var(--yel);transform:rotate(-2.2deg)}
.bd.b2{background:var(--cr);transform:rotate(2.2deg)}
.bd div{display:inline-block;animation:mq 34s linear infinite}
.bd.b2 div{animation-direction:reverse}
.bd em{font-style:normal;color:var(--or);margin:0 22px}
/* confetti + back to top */
.cf{position:fixed;width:9px;height:14px;border:1.5px solid var(--ink);z-index:90;pointer-events:none;margin:-7px 0 0 -4px}
.up{position:fixed;right:18px;bottom:18px;width:52px;height:52px;border-radius:50%;border:2.5px solid var(--ink);background:var(--yel);box-shadow:4px 4px 0 var(--ink);font-size:1.5rem;line-height:1;cursor:pointer;z-index:60;color:var(--ink);opacity:0;pointer-events:none;transform:translateY(24px) rotate(-25deg);transition:opacity .25s,transform .35s cubic-bezier(.2,.9,.3,1.4),rotate .2s}
.up.on{opacity:1;pointer-events:auto;transform:none}
@media (hover:hover) and (pointer:fine){.up:hover{rotate:12deg}}
@media(max-width:900px){.xb{height:110px}.bd{font-size:1.2rem;margin-top:-23px}.up{right:12px;bottom:12px;width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.hero:after,.ah:after{display:none}}

/* ---- engagements page + page transitions ---- */
.wipe{position:fixed;inset:0;z-index:200;pointer-events:none;display:flex}
.wipe i{flex:1;background:var(--ink);transform:scaleY(0)}
.wipe i:nth-child(2){background:var(--or)}.wipe i:nth-child(3){background:var(--yel)}.wipe i:nth-child(4){background:var(--teal)}.wipe i:nth-child(5){background:var(--cr)}
.lv .wipe i{transform:scaleY(1);animation:wout .75s cubic-bezier(.7,0,.2,1) forwards}
.go .wipe i{animation:win .45s cubic-bezier(.7,0,.2,1) forwards}
.lv .wipe i:nth-child(2),.go .wipe i:nth-child(2){animation-delay:.06s}
.lv .wipe i:nth-child(3),.go .wipe i:nth-child(3){animation-delay:.12s}
.lv .wipe i:nth-child(4),.go .wipe i:nth-child(4){animation-delay:.18s}
.lv .wipe i:nth-child(5),.go .wipe i:nth-child(5){animation-delay:.24s}
@keyframes wout{from{transform:scaleY(1);transform-origin:top}to{transform:scaleY(0);transform-origin:top}}
@keyframes win{from{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(1);transform-origin:bottom}}
.eh{position:relative;overflow:hidden;padding:60px 0 100px;border-bottom:2.5px solid var(--ink);background:radial-gradient(circle at 86% 20%,#ffb48a 0,transparent 45%),radial-gradient(circle at 8% 92%,#ffdcbc 0,transparent 42%),var(--cr)}
.eh:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(380px circle at var(--mx,72%) var(--my,28%),rgba(255,255,255,.6),transparent 62%)}
.eh .c{position:relative;z-index:1}
.eh-g{display:grid;grid-template-columns:1.15fr .85fr;gap:52px;align-items:center}
.eh h1{font-size:clamp(4.2rem,13.5vw,11.5rem);line-height:.82;margin:14px 0 0}
.eh p.lead{max-width:30em;font-size:1.2rem;margin:26px 0 8px}
.polw{justify-self:center;width:100%;max-width:440px;text-align:center}
.pol{margin:0 0 30px;position:relative;background:#fff;border:3px solid var(--ink);padding:14px 14px 56px;box-shadow:10px 10px 0 var(--ink);rotate:4deg;transition:rotate .35s,scale .35s}
@media (hover:hover) and (pointer:fine){.pol:hover{rotate:-1.5deg;scale:1.03}}
.pol img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#2a2230}
.pol figcaption{position:absolute;left:18px;right:18px;bottom:14px;font-family:var(--mono);font-size:.78rem;text-transform:uppercase;text-align:left}
.pol .stk{position:absolute;top:-20px;right:-16px;rotate:10deg;background:var(--yel);border:2.5px solid var(--ink);border-radius:99px;padding:5px 15px;font-weight:700;box-shadow:3px 3px 0 var(--ink)}
.jet{position:absolute;left:0;right:0;bottom:30px;height:0;border-top:3px dashed rgba(20,17,15,.32);pointer-events:none;z-index:1}
.jet svg{position:absolute;top:-13px;left:-60px;width:46px;height:26px;animation:fly 17s linear infinite}
@keyframes fly{0%{left:-60px;rotate:-6deg}50%{rotate:5deg}100%{left:100%;rotate:-6deg}}
.mapx{padding:96px 0 90px;border-bottom:2.5px solid var(--ink);background:#fff;background-image:radial-gradient(#e9d8c4 1.2px,transparent 1.2px);background-size:22px 22px}
.mp{position:relative;background:var(--ink);border:3px solid var(--ink);border-radius:22px;box-shadow:10px 10px 0 var(--or);overflow:hidden;aspect-ratio:1000/395;outline-offset:6px}
.mp svg{display:block;width:100%;height:100%}
.land{fill:none;stroke:rgba(252,228,190,.34);stroke-width:3.3;stroke-linecap:round}
.grat path{fill:none;stroke:rgba(252,228,190,.09);stroke-width:1;vector-effect:non-scaling-stroke}
.arc{fill:none;stroke:var(--or);stroke-width:2.4;vector-effect:non-scaling-stroke;stroke-linecap:round}
.arc.old{opacity:.5;stroke-dasharray:3 6}
.arc.fly{stroke:var(--yel);stroke-width:3.4}
.pin{cursor:pointer;outline:none}
.pin .dot{fill:#7a6c5f;stroke:var(--ink);stroke-width:2;transition:fill .3s}
.pin .ring{fill:none;stroke:var(--yel);stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center}
.pin.vis .dot{fill:var(--or)}
.pin.cur .dot{fill:var(--teal)}
.pin.cur .ring{animation:ring 1.8s ease-out infinite}
.pin:focus-visible .dot{fill:var(--yel)}@media (hover:hover) and (pointer:fine){.pin:hover .dot{fill:var(--yel)}}
@keyframes ring{from{transform:scale(1);opacity:.9}to{transform:scale(3.8);opacity:0}}
.pin text{font:700 12px var(--mono);fill:var(--cr);paint-order:stroke;stroke:var(--ink);stroke-width:4px;stroke-linejoin:round;opacity:0;transition:opacity .25s;pointer-events:none;text-transform:uppercase;letter-spacing:.04em}
.pin.cur text,.zoomed .pin text{opacity:1}
.plane{opacity:0;transition:opacity .3s;pointer-events:none}
.hud{position:absolute;left:20px;top:14px;right:20px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none;color:var(--cr);gap:10px}
.hy{font-family:var(--head);font-weight:900;font-size:clamp(2.2rem,7vw,5rem);line-height:.9;color:transparent;-webkit-text-stroke:2px var(--cr);display:inline-block}
.hy.tick{animation:tick .6s cubic-bezier(.2,.9,.3,1.3)}
@keyframes tick{from{translate:0 -35%;opacity:0}}
.hs{background:var(--yel);color:var(--ink);border:2.5px solid var(--ink);border-radius:99px;padding:4px 12px;white-space:nowrap}
.pbar{position:absolute;left:0;bottom:0;height:5px;background:linear-gradient(90deg,var(--or),var(--yel));width:0;transition:width .8s ease}
.ctl{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px;align-items:center}
.ctl .hint{opacity:.7}
.yrs{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.yrs button{font:700 .85rem var(--mono);color:var(--ink);border:2.5px solid var(--ink);background:#fff;border-radius:99px;padding:6px 14px;cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:translate .15s,background .15s}
@media (hover:hover) and (pointer:fine){.yrs button:hover{translate:-1px -1px}}
.yrs button.on{background:var(--yel)}
.sc{margin-top:36px;display:grid;grid-template-columns:.95fr 1.05fr;gap:36px;align-items:center;background:var(--cr);border:3px solid var(--ink);border-radius:22px;box-shadow:8px 8px 0 var(--ink);padding:26px;position:relative;overflow:hidden}
.sc.hot{background:var(--yel)}
.sc .ph{position:relative;margin:0;border:3px solid var(--ink);border-radius:16px;overflow:hidden;background:var(--ink);aspect-ratio:4/3;box-shadow:6px 6px 0 var(--ink);cursor:zoom-in}
.sc .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;display:block}
.sc .ph:after{content:"";position:absolute;inset:0;background:var(--or);transform:scaleX(0);transform-origin:right;pointer-events:none}
.sc.swap .ph:after{animation:wipe .8s cubic-bezier(.7,0,.2,1)}
.sc.swap .ph img{animation:imgin 1s cubic-bezier(.2,.9,.3,1) backwards}
@keyframes wipe{0%{transform:scaleX(0);transform-origin:left}45%{transform:scaleX(1);transform-origin:left}55%{transform:scaleX(1);transform-origin:right}100%{transform:scaleX(0);transform-origin:right}}
@keyframes imgin{from{scale:1.3;filter:saturate(0)}}
.sc .stp{position:absolute;left:10px;top:10px;background:var(--ink);color:var(--cr);border-radius:99px;padding:3px 11px;z-index:2}
.sc.swap .tx>*{animation:up .6s cubic-bezier(.2,.9,.3,1) backwards}
.sc.swap .tx>*:nth-child(1){animation-delay:.3s}.sc.swap .tx>*:nth-child(2){animation-delay:.38s}.sc.swap .tx>*:nth-child(3){animation-delay:.46s}.sc.swap .tx>*:nth-child(4){animation-delay:.54s}.sc.swap .tx>*:nth-child(5){animation-delay:.62s}.sc.swap .tx>*:nth-child(6){animation-delay:.7s}
@keyframes up{from{opacity:0;translate:0 26px}}
.sc .where{display:inline-block;background:var(--ink);color:var(--cr);padding:4px 13px;border-radius:99px}
.sc h3{font-size:clamp(1.9rem,4vw,3.1rem);margin:14px 0 10px;line-height:1}
.sc .dm{font-size:1.1rem;font-weight:700;margin-bottom:8px}
.sc .tag{display:inline-block;margin-left:8px;background:#fff;border:2px solid var(--ink);border-radius:99px;padding:0 10px;font-family:var(--mono);font-size:.74rem;text-transform:uppercase;vertical-align:middle}
.sc .nt{font-size:1.05rem;margin-bottom:16px;max-width:30em}
.sc .lk{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.sc .lk .btn{padding:9px 16px;font-size:.88rem}
.sc .also{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.sc .also button{font:700 .8rem var(--mono);border:2px solid var(--ink);background:#fff;border-radius:99px;padding:3px 11px;cursor:pointer;color:var(--ink)}
.wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:28px}
.wall figure{margin:0;position:relative;background:#fff;border:3px solid var(--ink);border-radius:16px;overflow:hidden;box-shadow:6px 6px 0 var(--ink);cursor:zoom-in;transition:translate .25s,rotate .25s,box-shadow .25s}
.wall figure:nth-child(3n+1){rotate:-1.2deg}.wall figure:nth-child(3n+2){rotate:1deg}
@media (hover:hover) and (pointer:fine){.wall figure:hover{rotate:0deg;translate:0 -6px;box-shadow:10px 10px 0 var(--ink)}}
.wall img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 25%;background:#f1eadf}
.wall figcaption{padding:12px 14px 14px;font-weight:700;line-height:1.25}
.wall figcaption small{display:block;font-family:var(--mono);font-weight:400;font-size:.74rem;text-transform:uppercase;margin-top:5px;opacity:.7}
.wall .yb{position:absolute;top:10px;left:10px;z-index:1;background:var(--yel);border:2px solid var(--ink);border-radius:99px;padding:1px 10px;font-family:var(--mono);font-size:.74rem}
.log{display:grid}
.lr{display:grid;grid-template-columns:210px 1fr;gap:28px;padding:30px 0;border-top:3px solid var(--ink)}
.lr:last-child{border-bottom:3px solid var(--ink)}
.lr .yr{font-size:clamp(3rem,7vw,5.4rem)}
.lr ul{list-style:none;display:grid;gap:14px;align-content:start}
.lr li{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline}
.lr li b{font-size:1.12rem}
.lr li span{opacity:.75}
.lr li a{font-weight:700}
@media(max-width:900px){.eh-g,.sc,.lr{grid-template-columns:1fr}.eh{padding:40px 0 90px}.lr{gap:6px}.mapx{padding:64px 0}.sc{padding:18px}.hud{left:12px;right:12px;top:8px}}
@media(prefers-reduced-motion:reduce){.wipe{display:none}.eh:after{display:none}}

/* ---- speaking engagements tweaks + recommendations ---- */
.eh h1{font-size:clamp(2.3rem,6.4vw,5.6rem);line-height:.9}
.eh .ol{-webkit-text-stroke-width:2px}
@media(max-width:1100px){.nv{gap:16px;font-size:.74rem}}
.xb.lt{background:linear-gradient(var(--cr) 50%,#fff 50%)}
.xb.lt .bd.b2{background:var(--or)}
.xb.lt .bd.b2 em{color:var(--ink)}
.rh{position:relative;overflow:hidden;padding:60px 0 90px;border-bottom:2.5px solid var(--ink);background:radial-gradient(circle at 90% 12%,#ffdcbc 0,transparent 42%),radial-gradient(circle at 6% 94%,#ffb48a 0,transparent 46%),var(--cr)}
.rh:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(380px circle at var(--mx,72%) var(--my,28%),rgba(255,255,255,.6),transparent 62%)}
.rh .c{position:relative;z-index:1}
.rh-g{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.rh h1{font-size:clamp(4.2rem,13.5vw,11.5rem);line-height:.82;margin:14px 0 0}
.rh p.lead{max-width:30em;font-size:1.2rem;margin:26px 0 8px}
.orbw{position:relative;justify-self:center;width:100%;max-width:460px}
.orb{position:relative;width:100%;aspect-ratio:1;animation:spin 46s linear infinite}
.orb:before{content:"";position:absolute;inset:14%;border:3px dashed rgba(20,17,15,.35);border-radius:50%}
.orb .o{position:absolute;left:50%;top:50%;width:19%;aspect-ratio:1;margin:-9.5% 0 0 -9.5%;transform:rotate(var(--a)) translateX(200%) rotate(calc(var(--a)*-1))}
.orb .o img{display:block;width:100%;height:100%;border-radius:50%;border:3px solid var(--ink);object-fit:cover;background:var(--yel);box-shadow:3px 3px 0 var(--ink);animation:spin 46s linear infinite reverse}
.orbc{position:absolute;inset:31%;border-radius:50%;background:var(--yel);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:clamp(4.5rem,11vw,8rem);line-height:.8;padding-top:.14em}
@media (hover:hover) and (pointer:fine){.orbw:hover .orb,.orbw:hover .orb img{animation-play-state:paused}}
@keyframes spin{to{transform:rotate(360deg)}}
.cols{column-count:3;column-gap:26px}
.rcd{position:relative;break-inside:avoid;margin:0 0 28px;border:3px solid var(--ink);border-radius:20px;box-shadow:7px 7px 0 var(--ink);padding:24px 22px 20px;background:#fff;transition:translate .25s,rotate .25s,box-shadow .25s}
.rcd.c0{background:var(--cr)}.rcd.c1{background:#fff}.rcd.c2{background:#d5f3f5}.rcd.c3{background:var(--pe)}
.rcd.t0{rotate:-1deg}.rcd.t1{rotate:.8deg}
@media (hover:hover) and (pointer:fine){.rcd:hover{rotate:0deg;translate:0 -5px;box-shadow:11px 11px 0 var(--ink)}}
.rcd.hide{display:none}
.rcd.pop{animation:pop .55s cubic-bezier(.2,.9,.3,1.2) backwards;animation-delay:calc(var(--d)*45ms)}
@keyframes pop{from{opacity:0;scale:.85;translate:0 24px}}
.grp{position:absolute;top:-13px;right:16px;rotate:3deg;background:var(--yel);border:2px solid var(--ink);border-radius:99px;padding:1px 11px;font-family:var(--mono);font-size:.7rem;text-transform:uppercase}
.who{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.av{flex:none;width:68px;height:68px;border-radius:50%;border:3px solid var(--ink);object-fit:cover;background:var(--yel);box-shadow:3px 3px 0 var(--ink)}
.av.ini{display:grid;place-items:center;font-family:var(--head);font-weight:900;font-size:1.5rem}
.who b{display:block;font-family:var(--head);font-size:1.25rem;line-height:1.05}
.who small{display:block;font-size:.85rem;opacity:.8;line-height:1.3;margin-top:4px}
.who a{font-weight:700;font-size:.8rem}
.rcd .q{font-family:var(--head);font-weight:700;font-size:1.28rem;line-height:1.25;letter-spacing:-.01em}
.more{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease}
.more>div{overflow:hidden}
.rcd.open .more{grid-template-rows:1fr}
.rcd .ex{margin-top:12px;padding-top:12px;border-top:2px dashed rgba(20,17,15,.3);font-size:1rem;line-height:1.5}
.tg3{margin-top:16px;font:700 .8rem var(--mono);text-transform:uppercase;border:2px solid var(--ink);background:#fff;border-radius:99px;padding:4px 14px;cursor:pointer;color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
@media (hover:hover) and (pointer:fine){.tg3:hover{background:var(--yel)}}
.src{margin-top:34px;font-size:1rem}
.src a{font-weight:700}
@media(max-width:1000px){.cols{column-count:2}}
@media(max-width:900px){.rh-g{grid-template-columns:1fr}.rh{padding:40px 0 70px}}
@media(max-width:640px){.cols{column-count:1}}
@media(prefers-reduced-motion:reduce){.rh:after{display:none}}

/* ---- recommendations v2: two orbit rings + full texts ---- */
.orb{animation:none}
.orb:before{display:none}
.orb .ring{position:absolute;inset:0;animation:spin 46s linear infinite;pointer-events:none}
.orb .ring.r2{animation:spin 34s linear infinite reverse}
.orb .ring:before{content:"";position:absolute;inset:12.5%;border:3px dashed rgba(20,17,15,.35);border-radius:50%}
.orb .ring.r2:before{inset:28%}
.orb .ring .o{width:15%;margin:-7.5% 0 0 -7.5%;--tx:253%;pointer-events:auto;cursor:pointer;transform:rotate(var(--a)) translateX(var(--tx)) rotate(calc(var(--a)*-1))}
.orb .ring.r2 .o{width:13%;margin:-6.5% 0 0 -6.5%;--tx:169%}
.orb .o img,.orb .o .ini{animation:spin 46s linear infinite reverse}
.orb .r2 .o img,.orb .r2 .o .ini{animation:spin 34s linear infinite}
.orb .o .ini{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;border:3px solid var(--ink);background:var(--or);font-family:var(--head);font-weight:900;font-size:clamp(.85rem,2.2vw,1.4rem);box-shadow:3px 3px 0 var(--ink)}
@media (hover:hover) and (pointer:fine){.orb .o:hover img,.orb .o:hover .ini{scale:1.18}}
.orb .o:focus-visible{outline:3px solid var(--ink);outline-offset:3px;border-radius:50%}
@media (hover:hover) and (pointer:fine){.orbw:hover .orb .ring,.orbw:hover .orb .o img,.orbw:hover .orb .o .ini{animation-play-state:paused}}
.orbc{inset:38%;font-size:clamp(3rem,7vw,5rem)}
.rcd.flash{animation:flash 1.5s ease}
@keyframes flash{30%{box-shadow:0 0 0 7px var(--yel),7px 7px 0 var(--ink)}}
.rcd .btns{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px}
.rcd .btns .tg3{margin-top:0}
.rcd .btns a.tg3{text-decoration:none}
.yrs a{font:700 .85rem var(--mono);color:var(--ink);text-decoration:none;border:2.5px solid var(--ink);background:#fff;border-radius:99px;padding:6px 14px;box-shadow:3px 3px 0 var(--ink);transition:translate .15s,background .15s}
@media (hover:hover) and (pointer:fine){.yrs a:hover{translate:-1px -1px;background:var(--yel)}}
.fx{padding:96px 0;border-bottom:2.5px solid var(--ink);background:var(--cr)}
.fx .intro{max-width:34em;font-size:1.15rem;margin:-18px 0 26px}
.fr{display:grid;grid-template-columns:270px 1fr;gap:40px;padding:38px 0;border-top:3px solid var(--ink);scroll-margin-top:80px}
.fr:last-child{border-bottom:3px solid var(--ink)}
.fa{position:sticky;top:88px;align-self:start}
.fa .av{width:96px;height:96px;margin-bottom:14px;font-size:2rem}
.fa b{display:block;font-family:var(--head);font-size:1.6rem;line-height:1.05}
.fa small{display:block;margin-top:6px;opacity:.8;line-height:1.35}
.fa a.lk2{display:inline-block;margin-top:8px;font-weight:700;font-size:.85rem}
.fa .grp2{display:block;width:max-content;margin-top:12px;background:var(--yel);border:2px solid var(--ink);border-radius:99px;padding:1px 11px;font-family:var(--mono);font-size:.7rem;text-transform:uppercase}
.ft2 p{font-size:1.12rem;line-height:1.7;margin-bottom:16px;max-width:46em}
.ft2 p:first-child:first-letter{font-family:var(--head);font-weight:900;float:left;font-size:4.2rem;line-height:.78;padding:8px 12px 0 0}
@media(max-width:900px){.fr{grid-template-columns:1fr;gap:16px}.fa{position:static}.fx{padding:64px 0}}
/* ---- fixes: whole-word titles, in-page talks player, faster tour with the photo on the map ---- */
.wd{display:inline-block;white-space:nowrap}
h1,h2{overflow-wrap:normal;word-break:normal;hyphens:none}
.hero .name{margin:6px 0 18px}

/* talks player */
.vx{margin-top:44px;display:grid;grid-template-columns:1.6fr 1fr;gap:34px;align-items:start}
.vw{position:relative;aspect-ratio:16/9;border:3px solid var(--cr);border-radius:22px;overflow:hidden;background:#000;box-shadow:10px 10px 0 var(--or)}
.vw iframe,#vslot{position:absolute;inset:0;width:100%;height:100%;border:0}
.vcv{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:#000;display:block}
.vcv img{width:100%;height:100%;object-fit:cover;display:block;opacity:.88}
.vcv i{position:absolute;left:50%;top:50%;width:92px;height:92px;margin:-46px 0 0 -46px;border-radius:50%;background:#fff;border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);transition:transform .2s}
.vcv i:after{content:"";position:absolute;left:35px;top:23px;border-left:28px solid var(--ink);border-block:18px solid transparent}
.vcv:focus-visible i{transform:scale(1.1) rotate(-6deg)}@media (hover:hover) and (pointer:fine){.vcv:hover i{transform:scale(1.1) rotate(-6deg)}}
.vcv .mono{position:absolute;left:14px;bottom:12px;background:var(--yel);color:var(--ink);border:2.5px solid var(--ink);border-radius:99px;padding:3px 12px}
.vcv[hidden],.vfb[hidden]{display:none}
.vfb{position:absolute;inset:0;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;text-align:center;padding:22px;background:var(--or);color:var(--ink);font-weight:700}
.vn{margin-top:26px}
.vn .mono{color:var(--or)}
.vn h3{font-size:clamp(1.5rem,3vw,2.3rem);margin-top:8px;line-height:1.05}
.vl{display:flex;flex-direction:column;gap:12px;max-height:480px;overflow:auto;padding:2px 10px 10px 2px}
.vi{display:grid;grid-template-columns:128px 1fr;gap:12px;align-items:center;text-align:left;width:100%;background:transparent;color:var(--cr);border:2.5px solid var(--cr);border-radius:14px;padding:8px;cursor:pointer;font:inherit;transition:transform .15s,box-shadow .15s,background .15s}
@media (hover:hover) and (pointer:fine){.vi:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--or)}}
.vi.on{background:var(--or);color:var(--ink);border-color:var(--or)}
.vi img{width:128px;aspect-ratio:16/9;object-fit:cover;border-radius:8px;display:block;border:2px solid currentColor}
.vi b{font-family:var(--head);font-weight:900;font-size:1rem;line-height:1.12;display:block}
.vi small{display:block;font-family:var(--mono);font-size:.66rem;letter-spacing:.05em;text-transform:uppercase;opacity:.75;margin-top:5px}
.vb{margin-top:38px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
@media(max-width:900px){.vx{grid-template-columns:1fr}.vl{max-height:none}.vi{grid-template-columns:112px 1fr}.vi img{width:112px}}

/* map tour: photo pinned on the map */
.mpw{position:relative}
.ov{position:absolute;left:20px;bottom:22px;width:clamp(170px,26%,300px);background:#fff;border:3px solid var(--ink);border-radius:14px;box-shadow:6px 6px 0 var(--or);padding:7px 7px 10px;z-index:3;pointer-events:none;opacity:0;transform:translateY(26px) rotate(-6deg) scale(.7);transform-origin:left bottom;transition:opacity .2s ease,transform .45s cubic-bezier(.2,1.25,.3,1)}
.ov.on{opacity:1;transform:rotate(-3deg)}
.ov img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 30%;border:2px solid var(--ink);border-radius:7px;background:var(--pe)}
.ov b{display:block;font-family:var(--head);font-weight:900;font-size:clamp(.82rem,1.5vw,1.08rem);line-height:1.05;margin-top:8px;letter-spacing:-.01em}
.ov small{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.05em;text-transform:uppercase;opacity:.75;margin-top:3px}
@media(max-width:720px){
.ov{position:relative;left:auto;bottom:auto;width:auto;margin-top:18px;display:flex;gap:12px;align-items:center;padding:8px;transform:translateY(10px);box-shadow:4px 4px 0 var(--or)}
.ov.on{transform:none}
.ov img{width:104px;flex:none}
.ov b{margin-top:0;font-size:1rem}
.ov:empty{display:none}
}
@media(prefers-reduced-motion:reduce){.ov,.ov.on{transition:none}}

/* ---- books page ---- */
.bks{padding:88px 0;border-bottom:2.5px solid var(--ink);position:relative;overflow:hidden}
.bks.alt{background:#fff;background-image:radial-gradient(#e9d8c4 1.2px,transparent 1.2px);background-size:22px 22px}
.bkg{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}
.bks.rev .bkg{grid-template-columns:1.1fr .9fr}
.bks.rev .bkc{order:2}
.bkc{position:relative;margin:0;padding:10px 12px 14px 8px}
.bkc a{display:block;position:relative;border:3px solid var(--ink);border-radius:18px;overflow:hidden;box-shadow:12px 12px 0 var(--ink);background:var(--ink);transform:rotate(-2.5deg);transition:transform .35s cubic-bezier(.2,1.4,.4,1),box-shadow .3s}
.bks.rev .bkc a{transform:rotate(2.5deg)}
.bkc a:focus-visible{transform:rotate(0) scale(1.03);box-shadow:16px 16px 0 var(--or)}@media (hover:hover) and (pointer:fine){.bkc a:hover{transform:rotate(0) scale(1.03);box-shadow:16px 16px 0 var(--or)}}
.bkc img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.bkn{position:absolute;left:-6px;top:-8px;z-index:2;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:var(--yel);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);font-family:var(--head);font-weight:900;font-size:1.5rem;transform:rotate(-8deg)}
.bkt{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
.bkt span{border:2.5px solid var(--ink);border-radius:99px;padding:3px 13px;background:#fff;font-family:var(--mono);font-size:.74rem;text-transform:uppercase}
.bkt span.hot{background:var(--yel)}
.bks h2{font-size:clamp(2.2rem,5.4vw,4.4rem);line-height:.95;margin-bottom:20px}
.bks p{font-size:1.1rem;max-width:34em;margin-bottom:12px}
.bks .lk{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.bkq{border-left:6px solid var(--or);padding:6px 0 6px 16px;font-weight:700;margin:20px 0 0;max-width:30em}
@media(max-width:900px){.bkg,.bks.rev .bkg{grid-template-columns:1fr;gap:40px}.bks.rev .bkc{order:0}.bks{padding:60px 0}}
@media(min-width:901px){.nv{gap:20px}}
@media(prefers-reduced-motion:reduce){.bkc a,.bks.rev .bkc a{transform:none;transition:none}}

/* ---- books v2: creative layer ---- */
.bh .c{position:relative}
.bh-g{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.bh h1{font-size:clamp(3.4rem,9.5vw,8.4rem);line-height:.88;margin:14px 0 0}
.bh .st3{margin:26px 0 22px}
.pick{margin-top:6px}
.pk{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.pk button{font:700 .92rem var(--body);color:var(--ink);background:#fff;border:2.5px solid var(--ink);border-radius:99px;padding:10px 18px;cursor:pointer;box-shadow:4px 4px 0 var(--ink);transition:translate .15s,box-shadow .15s,background .15s}
@media (hover:hover) and (pointer:fine){.pk button:hover{translate:-2px -2px;box-shadow:6px 6px 0 var(--ink);background:var(--yel)}}
.pk button:active{translate:2px 2px;box-shadow:1px 1px 0 var(--ink)}
.fan{position:relative;height:430px}
.fan a{position:absolute;width:64%;display:block;border:3px solid var(--ink);border-radius:16px;overflow:hidden;background:var(--ink);box-shadow:9px 9px 0 var(--ink);transition:transform .4s cubic-bezier(.2,1.4,.4,1),box-shadow .3s;animation:bob 5s ease-in-out infinite}
.fan a img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.fan a i{position:absolute;left:8px;top:8px;width:40px;height:40px;border-radius:50%;background:var(--yel);border:2.5px solid var(--ink);display:grid;place-items:center;font:900 1rem var(--head);font-style:normal}
.fan .f1{left:0;top:40px;transform:rotate(-9deg);z-index:1}
.fan .f2{left:19%;top:0;transform:rotate(3deg);z-index:3;animation-delay:-1.6s}
.fan .f3{right:0;top:96px;transform:rotate(10deg);z-index:2;animation-delay:-3.2s}
.fan a:focus-visible{transform:rotate(0) scale(1.08);z-index:5;box-shadow:13px 13px 0 var(--or)}@media (hover:hover) and (pointer:fine){.fan a:hover{transform:rotate(0) scale(1.08);z-index:5;box-shadow:13px 13px 0 var(--or)}}
.bign{position:absolute;right:3%;top:10px;font-family:var(--head);font-weight:900;font-size:clamp(9rem,26vw,22rem);line-height:.8;color:transparent;-webkit-text-stroke:3px var(--ink);opacity:.12;pointer-events:none;user-select:none}
.bks .c{position:relative;z-index:1}
.chap{display:inline-block;background:var(--ink);color:var(--cr);border-radius:99px;padding:4px 14px;margin-bottom:14px}
.hook{font-family:var(--head);font-style:italic;font-weight:700;font-size:clamp(1.25rem,2.6vw,1.9rem);line-height:1.2;margin:0 0 18px!important;max-width:22em!important}
.ins{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 4px}
.ins span{background:var(--yel);border:2.5px solid var(--ink);border-radius:12px;padding:4px 12px;font-weight:700;font-size:.9rem;box-shadow:3px 3px 0 var(--ink);transition:transform .2s}
.ins span:nth-child(2n){background:var(--or)}
.ins span:nth-child(3n){background:#bff0f3}
@media (hover:hover) and (pointer:fine){.ins span:hover{transform:rotate(-3deg) translateY(-3px)}}
.stamp{position:absolute;right:-2px;bottom:-2px;z-index:2;background:var(--ink);color:var(--cr);border-radius:99px;padding:5px 14px;transform:rotate(-4deg)}
.bkc.pop a{animation:popb .7s cubic-bezier(.2,1.5,.4,1)}
@keyframes popb{40%{scale:1.1;rotate:5deg}}
.toast{position:fixed;left:50%;bottom:26px;z-index:90;transform:translate(-50%,30px);opacity:0;background:var(--ink);color:var(--cr);border:2.5px solid var(--cr);border-radius:99px;padding:10px 20px;font:700 .9rem var(--mono);pointer-events:none;transition:opacity .25s,transform .35s cubic-bezier(.2,1.4,.4,1);max-width:90vw;text-align:center}
.toast.on{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.bh-g{grid-template-columns:1fr}.fan{height:300px;max-width:480px}.bign{font-size:9rem}}
@media(prefers-reduced-motion:reduce){.fan a,.bkc.pop a{animation:none}}
/* awards plaques */
.awg{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px;margin-top:40px}
.aw{display:block;text-decoration:none;color:var(--ink)}
.awc{position:relative;display:flex;flex-direction:column;gap:10px;height:100%;min-height:270px;padding:28px 18px 20px;background:#fff;border:3px solid var(--ink);border-radius:18px;box-shadow:6px 6px 0 var(--ink);overflow:hidden;transition:transform .28s cubic-bezier(.2,.9,.3,1.4),box-shadow .28s}
.awc::before{content:"";position:absolute;left:0;right:0;top:0;height:12px;background:var(--c,var(--or));border-bottom:3px solid var(--ink)}
.awc::after{content:"";position:absolute;top:-20%;left:-60%;width:40%;height:140%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.8),transparent);transform:skewX(-18deg);transition:left .7s;pointer-events:none}
.aw:focus-visible .awc{transform:translate(-3px,-5px) rotate(-1.6deg);box-shadow:10px 11px 0 var(--ink)}@media (hover:hover) and (pointer:fine){.aw:hover .awc{transform:translate(-3px,-5px) rotate(-1.6deg);box-shadow:10px 11px 0 var(--ink)}}
.aw:nth-child(even):focus-visible .awc{transform:translate(-3px,-5px) rotate(1.6deg)}@media (hover:hover) and (pointer:fine){.aw:nth-child(even):hover .awc{transform:translate(-3px,-5px) rotate(1.6deg)}}
.aw:focus-visible .awc::after{left:130%}@media (hover:hover) and (pointer:fine){.aw:hover .awc::after{left:130%}}
.awh{display:flex;align-items:center;justify-content:space-between;gap:10px}
.awi{flex:none;width:80px;height:80px;border:3px solid var(--ink);border-radius:50%;background:var(--c,var(--or));display:grid;place-items:center;box-shadow:3px 3px 0 var(--ink)}
.awi svg{width:58px;height:58px;display:block}
.aw:focus-visible .awi svg{animation:bob .9s ease-in-out infinite}@media (hover:hover) and (pointer:fine){.aw:hover .awi svg{animation:bob .9s ease-in-out infinite}}
.awi.sm{width:62px;height:62px}
.awi.sm svg{width:44px;height:44px}
.awy{padding:4px 11px;border:2px solid var(--ink);border-radius:99px;background:var(--cr);font-size:.8rem;font-weight:700}
.awk{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;opacity:.7}
.awc b{font-family:'Playfair Display',serif;font-weight:900;font-size:1.28rem;line-height:1.12;overflow-wrap:normal;word-break:normal;hyphens:none}
.awl{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 12px;background:#fff;border:3px solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--ink)}
.awc .awl{margin-top:auto;align-self:flex-start}
.awl img{display:block;width:auto;max-width:100%}
.awl .l-hustef{height:34px}
.awl .l-lambda{height:26px}
.awl .l-euro{height:40px}
.awl .l-qa{height:30px}
.awl.t{font-family:'Space Mono',monospace;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;line-height:1.2}
.awb{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:0 0 28px}
.awb .mono{display:block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px;opacity:.75}
.awb .awl{margin:0 8px 6px 0}
.chb .awb{justify-content:center;margin:26px 0 0}
@media(max-width:560px){.awg{grid-template-columns:1fr}.awc{min-height:0}}
@media(prefers-reduced-motion:reduce){.awc,.awc::after{transition:none}@media (hover:hover) and (pointer:fine){.aw:hover .awi svg{animation:none}}}
/* home hero v3 */
.hero{padding:44px 0 84px}
.hero .c{display:block}
.hx{--pt:150px;position:relative;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"ph tx" "soc soc";align-items:end}
.hx-bg{position:absolute;left:0;right:0;bottom:0;top:var(--pt);z-index:1;border:3px solid var(--ink);border-radius:36px;background:radial-gradient(rgba(20,17,15,.09) 1.3px,transparent 1.3px) 0 0/20px 20px,linear-gradient(180deg,#f9a574 0%,#fbc79b 55%,#fde0bb 100%);box-shadow:10px 10px 0 var(--ink)}
.hx-ph{grid-area:ph;position:relative;z-index:2;align-self:end}
.hx-ph img{display:block;width:108%;max-width:none;height:auto;transform-origin:50% 90%;transition:transform .25s ease-out;filter:drop-shadow(10px 14px 18px rgba(20,17,15,.30))}
.hx .bdg{top:50%;bottom:auto;right:-2%;width:112px;height:112px;z-index:3}
.hx-tx{grid-area:tx;position:relative;z-index:2;align-self:end;padding:40px 34px 34px 50px}
.hx-tx .name{font-size:clamp(3rem,6vw,6rem)}
.hx-tx .now{margin-bottom:6px}
.hx-tx .role{margin:14px 0 8px;font-size:clamp(1.1rem,2vw,1.5rem)}
.hx-aw{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:30px}
.hx-aw a{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:0 14px;text-decoration:none;color:var(--ink);border-left:2.5px dashed rgba(20,17,15,.5)}
.hx-aw a:first-child{border-left:0;padding-left:0}
.hx-aw .ai{width:62px;height:62px;border:3px solid var(--ink);border-radius:50%;background:var(--c,var(--or));display:grid;place-items:center;box-shadow:3px 3px 0 var(--ink);transition:translate .2s}
.hx-aw .ai svg{width:44px;height:44px;display:block}
.hx-aw a:focus-visible .ai{translate:0 -5px;animation:bob .9s ease-in-out infinite}@media (hover:hover) and (pointer:fine){.hx-aw a:hover .ai{translate:0 -5px;animation:bob .9s ease-in-out infinite}}
.hx-aw .ay{font-weight:700;background:#fff;border:2px solid var(--ink);border-radius:99px;padding:1px 9px;font-size:.74rem}
.hx-aw b{font-family:var(--head);font-weight:900;font-size:1.02rem;line-height:1.12;overflow-wrap:normal;word-break:normal;hyphens:none}
.hx-aw .al{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:auto;padding:6px 9px;background:#fff;border:2.5px solid var(--ink);border-radius:10px;box-shadow:2px 2px 0 var(--ink)}
.hx-aw .al img{display:block;width:auto}
.hx-aw .l-hustef{height:24px}
.hx-aw .l-euro{height:28px}
.hx-aw .l-lambda{height:16px}
.hx-aw .l-qa{height:22px}
.hx-aw .al.t{font-family:var(--mono);font-weight:700;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;line-height:1.2}
.hx-soc{grid-area:soc;position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 3px 3px;border-top:3px solid var(--ink);background:linear-gradient(90deg,#fff 0,#fdf0de 55%,#f3e6ff 100%);border-radius:0 0 32px 32px;overflow:hidden}
.so{display:flex;align-items:center;justify-content:center;gap:14px;padding:22px 14px;text-decoration:none;color:var(--ink);border-left:3px solid var(--ink);transition:background .2s,color .2s}
.so:first-child{border-left:0}
.so-ic{flex:none;width:52px;height:52px;border:3px solid var(--ink);border-radius:14px;display:grid;place-items:center;box-shadow:3px 3px 0 var(--ink);transition:background .2s,color .2s,rotate .2s}
.so-ic svg{width:28px;height:28px;display:block}
.so-in .so-ic{background:#0a66c2;color:#fff}
.so-tm .so-ic{background:var(--yel);color:var(--ink)}
.so-yt .so-ic{background:#ff3b30;color:#fff}
.so b{display:block;font-size:1.5rem;line-height:1.05;font-weight:800;letter-spacing:-.02em}
.so small{display:block;margin-top:4px;opacity:.75;font-size:.68rem}
.so-in:focus-visible{background:#0a66c2;color:#fff}@media (hover:hover) and (pointer:fine){.so-in:hover{background:#0a66c2;color:#fff}}
.so-tm:focus-visible{background:var(--yel)}@media (hover:hover) and (pointer:fine){.so-tm:hover{background:var(--yel)}}
.so-yt:focus-visible{background:#ff3b30;color:#fff}@media (hover:hover) and (pointer:fine){.so-yt:hover{background:#ff3b30;color:#fff}}
.so:focus-visible .so-ic{background:#fff;color:var(--ink);rotate:-8deg}@media (hover:hover) and (pointer:fine){.so:hover .so-ic{background:#fff;color:var(--ink);rotate:-8deg}}
@media(max-width:1100px){
.hx{--pt:250px}
.hx-tx{padding-left:40px}
.hx-aw{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 0}
.hx-aw a:nth-child(odd){border-left:0;padding-left:0}
.so{flex-direction:column;gap:8px;padding:18px 8px;text-align:center}
.so small{display:none}
.so b{font-size:1.2rem}
}
@media(max-width:900px){
.hero{padding:28px 0 60px}
.hx{--pt:calc(min(80vw,430px)*.4);grid-template-columns:minmax(0,1fr);grid-template-areas:"ph" "tx" "soc"}
.hx-ph{margin:0 auto;width:min(80vw,430px)}
.hx-ph img{width:100%;-webkit-mask-image:linear-gradient(#000 78%,transparent 100%);mask-image:linear-gradient(#000 78%,transparent 100%)}
.hx-tx .name{font-size:clamp(3.2rem,15vw,5.6rem)}
.hx .bdg{right:-4%;top:46%;width:92px;height:92px}
.hx-tx{padding:6px 18px 26px}
.hx-bg{border-radius:28px;box-shadow:7px 7px 0 var(--ink)}
.hx-soc{border-radius:0 0 24px 24px}
}
@media(max-width:480px){
.hx-aw{gap:20px 0}
.hx-aw a{padding:0 10px}
.hx-aw b{font-size:.95rem}
.so b{font-size:1rem}
.so-ic{width:44px;height:44px;border-radius:12px}
.so-ic svg{width:24px;height:24px}
}
@media(prefers-reduced-motion:reduce){.hx-ph img{transition:none}@media (hover:hover) and (pointer:fine){.hx-aw a:hover .ai{animation:none}}}
/* hero title pill with MoEngage logo */
.hx-tx .now{background:#fff;color:var(--ink);border:2.5px solid var(--ink);border-radius:16px;padding:8px 14px;gap:10px;box-shadow:3px 3px 0 var(--ink);flex-wrap:wrap;line-height:1.3}
.hx-tx .now .mo{display:block;height:20px;width:auto}
@media(max-width:900px){.hx-tx .now{font-size:.7rem;padding:8px 12px}.hx-tx .now .mo{height:18px}}
/* hero v4: halo, bold name, transparent logos */
.hx-ph::before{content:"";position:absolute;z-index:-1;left:12%;top:6%;width:74%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff6c2 0,#ffd84d 52%,#ffb347 100%);border:3px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}
.hx-tx .name{text-shadow:4px 4px 0 rgba(255,255,255,.85)}
.hx-tx .name .ol{color:#fff;-webkit-text-stroke:3px var(--ink);text-shadow:5px 5px 0 var(--ink);paint-order:stroke fill}
.hx-aw .al{background:none;border:0;box-shadow:none;padding:0;gap:8px 12px}
.hx-aw .al img{filter:drop-shadow(0 1px 0 rgba(255,255,255,.7))}
.hx-aw .l-hustef{height:30px}
.hx-aw .l-euro{height:46px}
.hx-aw .l-lambda{height:22px}
.hx-aw .l-qa{height:26px}
.hx-aw .l-jug{height:56px}
.hx-aw .al .ft{font-family:var(--mono);font-weight:700;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;line-height:1.2}
.awl .l-jug{height:46px}
.awl .ft{font-family:'Space Mono',monospace;font-weight:700;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;line-height:1.2}
@media(max-width:900px){.hx-ph::before{left:10%;top:4%;width:78%;box-shadow:6px 6px 0 var(--ink)}}
/* hero v5: calmer chips */
.hx-tx .now{background:none;border:0;border-radius:0;box-shadow:none;padding:0;margin:16px 0 0;gap:10px;font-size:.8rem;color:var(--ink)}
.hx-tx .now .mo{height:22px;width:auto;display:block}
.hx-aw{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px;margin-top:26px}
.hx-aw a,.hx-aw a:first-child,.hx-aw a:nth-child(odd){border-left:0;padding:0}
.hx-aw .ay{background:none;border:0;padding:0;font-size:.82rem;letter-spacing:.12em}
@media(max-width:900px){.hx-tx .now{font-size:.72rem}}
@media(max-width:640px){
.hx-aw{grid-template-columns:1fr;gap:20px}
.hx-aw a{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"i y" "i b" "i l";column-gap:14px;align-items:start}
.hx-aw .ai{grid-area:i}
.hx-aw .ay{grid-area:y;align-self:end}
.hx-aw b{grid-area:b}
.hx-aw .al{grid-area:l;margin-top:6px;justify-self:start}
}
/* hero v6: name sits below the panel line, role chip beside HEGDE */
.hx-tx{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:calc(var(--pt) + 30px) 34px 30px 50px}
.hx-tx .nm{display:grid}
.hx-tx .nm .name{grid-area:1/1;min-width:0;margin:0;color:var(--ink);text-shadow:none}
.hx-tx .nm .role{grid-area:1/1;justify-self:end;align-self:end;position:relative;z-index:2;margin:0 0 .7rem;display:flex;flex-direction:column;align-items:flex-end;gap:7px;font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;line-height:1}
.hx-tx .nm .role span{font-family:var(--head);font-size:clamp(1.05rem,1.7vw,1.45rem);letter-spacing:0;line-height:1.25;padding:2px 12px;box-shadow:3px 3px 0 var(--ink)}
.hx-tx .now{margin:0}
.hx-aw .ai svg{width:48px;height:48px}
.hx-aw{margin-top:4px}
@media(max-width:900px){
.hx-tx{align-self:auto;justify-content:flex-start;gap:14px;padding:6px 18px 26px}
.hx-tx .nm .role{grid-area:2/1;justify-self:start;flex-direction:row;align-items:center;gap:10px;margin:14px 0 0;font-size:.7rem}
.hx-tx .nm .role span{font-size:1.15rem}
}
/* slower skills bands */
.bd.b1 div{animation-duration:70s}
.bd.b2 div{animation-duration:210s}
/* hero v7: apple-like whitespace, name straddles the panel line */
.hx-tx .now{flex-wrap:wrap;row-gap:8px}
@media(min-width:901px){
.c{padding:0 40px}
.hero{padding:72px 0 116px}
.hx-tx{gap:48px;padding:var(--pt) 56px 56px 64px}
.hx-tx .nm .name{line-height:1.2;margin:-1.263em 0 0}
.hx-aw{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,.9fr);gap:0 34px;margin-top:0}
.hx-aw a{gap:12px}
.hx-aw .ai{width:64px;height:64px}
.hx-aw .ai svg{width:50px;height:50px}
.hx-aw b{font-size:1.05rem;line-height:1.25}
.hx-aw .al{flex-wrap:nowrap;gap:12px;margin-top:auto;padding-top:6px}
.hx-aw .l-euro{height:38px}
.hx-aw .l-lambda{height:19px}
}
@media(min-width:1101px){.hx{--pt:176px}}
@media(min-width:901px) and (max-width:1100px){
.hx-aw{gap:0 22px}
.hx-aw .l-euro{height:28px}
.hx-aw .l-lambda{height:15px}
.hx-aw .al{gap:8px}
}
@media(max-width:900px){
.hero{padding:40px 0 72px}
.hx-tx{padding:14px 26px 38px;gap:34px}
.hx-tx .nm .name{margin:0;line-height:1.12;background:linear-gradient(var(--ink),var(--ink)) 0 calc(50% + .06em)/100% 3px no-repeat}
.hx-tx .nm .role{margin:22px 0 0}
.hx-aw{gap:34px 22px}
.hx-aw .l-euro{height:32px}
.hx-aw .l-lambda{height:17px}
.hx-aw .al{flex-wrap:nowrap;gap:12px}
}
@media(max-width:480px){.hx-aw .l-euro{height:28px}.hx-aw .l-lambda{height:15px}}
@media(min-width:901px){
.about,.rc,.tk,.ct,.sp,.fin{padding-top:128px;padding-bottom:128px}
.ah,.eh,.rh{padding-top:84px;padding-bottom:116px}
}
@media(max-width:900px){
.about,.rc,.tk,.ct,.sp,.fin{padding-top:84px;padding-bottom:84px}
}
/* hero v8: compact hero, plain black icons, caps award list */
.hero{padding-top:30px}
.hx{--pt:130px}
.hx-aw{display:grid;grid-template-columns:minmax(0,1fr);gap:26px;margin-top:0}
.hx-aw a{display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-areas:"i b" "i y" "i l";align-items:start;gap:3px 22px}
.hx-aw .ai{grid-area:i;width:72px;height:72px;border:0;border-radius:0;background:none;box-shadow:none;display:grid;place-items:center}
.hx-aw .ai svg{width:72px;height:72px}
.hx-aw b{grid-area:b;font-family:var(--body);font-weight:800;font-size:.92rem;letter-spacing:.07em;text-transform:uppercase;line-height:1.3}
.hx-aw .ay{grid-area:y;align-self:start;font-family:var(--body);font-weight:800;font-size:.92rem;letter-spacing:.07em;line-height:1.3;opacity:.62}
.hx-aw .al{grid-area:l;margin:10px 0 0;padding:0;justify-self:start;flex-wrap:nowrap;gap:14px}
@media(min-width:1180px){
.hx-aw a{grid-template-columns:72px minmax(0,1fr) 170px;grid-template-areas:"i b l" "i y l";align-items:center}
.hx-aw .al{margin:0}
}
@media(max-width:1179px){.hx{--pt:140px}}
@media(max-width:900px){.hx{--pt:calc(min(80vw,430px)*.4)}}
@media(min-width:641px) and (max-width:1179px){
.hx-aw{gap:22px}
.hx-aw a{grid-template-columns:72px auto minmax(0,1fr);grid-template-areas:"i b b" "i y l";align-items:center}
.hx-aw .al{margin:0}
}
@media(max-width:480px){.hx-aw .ai,.hx-aw .ai svg{width:60px;height:60px}.hx-aw a{grid-template-columns:60px minmax(0,1fr);column-gap:18px}}
.hero>.spk:nth-of-type(2){display:none}
@media(min-width:901px){
.hx-tx{gap:36px;padding-bottom:42px}
.hx-aw{gap:22px}
.hx-ph img{width:110%}
}
@media(min-width:901px) and (max-width:1179px){
.hx-tx{gap:28px;padding-bottom:34px}
.hx-aw{gap:16px}
.hx-ph img{width:116%}
}
/* recognitions stats */
.rc .st3{gap:16px;margin:34px 0 40px}
.rc .st3 div{padding:18px 26px 16px;min-width:128px}
.rc .st3 b{font-size:2.4rem}
.rc .st3 span{display:block;margin-top:10px;font-family:var(--mono);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:480px){.rc .st3 div{flex:1 1 calc(50% - 8px);min-width:0;padding:16px 18px 14px}}
/* about: pick a hat */
.about .hd p.lead{max-width:30em;font-size:1.2rem;margin-top:20px}
.hats{--c:#ff9764;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:56px;align-items:stretch}
.ht-list{display:grid;grid-auto-rows:1fr;gap:16px}
.ht{font:inherit;color:var(--ink);cursor:pointer;text-align:left;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 22px;background:#fff;border:2.5px solid var(--ink);border-radius:20px;box-shadow:4px 4px 0 var(--ink);transition:translate .25s,box-shadow .25s,background .3s}
.ht i{font-style:normal;background:#fff;border:2px solid var(--ink);padding:1px 9px;border-radius:99px}
.ht span{font-family:var(--head);font-weight:900;font-size:clamp(1.6rem,2.8vw,2.4rem);letter-spacing:-.02em;text-transform:uppercase;line-height:1}
.ht svg{width:44px;height:44px;display:block}
@media (hover:hover) and (pointer:fine){.ht:hover{translate:-2px -2px;box-shadow:7px 7px 0 var(--ink)}}
@media (hover:hover) and (pointer:fine){.ht:hover svg{animation:bob .9s ease-in-out infinite}}
.ht:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.ht.on{background:var(--c);translate:18px 0;box-shadow:8px 8px 0 var(--ink)}
.ht-stage{position:relative;overflow:hidden;min-height:560px;padding:52px 56px 48px;border:2.5px solid var(--ink);border-radius:30px;box-shadow:10px 10px 0 var(--ink);background:radial-gradient(rgba(20,17,15,.09) 1.3px,transparent 1.3px) 0 0/20px 20px,var(--c);transition:background-color .5s}
.hatp-bar{position:absolute;left:0;top:0;width:100%;height:6px;background:var(--ink);transform:scaleX(0);transform-origin:0 50%}
.hatp-bar.run{animation:hatpbar 9s linear forwards}
@keyframes hatpbar{to{transform:scaleX(1)}}
.hats.hold .hatp-bar{animation-play-state:paused}
.hats.stop .hatp-bar{display:none}
.hatp{position:relative;z-index:1}
.js .hatp{display:none}
.js .hatp.on{display:block}
.hatp+.hatp{margin-top:36px}
.js .hatp+.hatp{margin-top:0}
.hatp-no{position:absolute;right:22px;top:-18px;z-index:-1;font-family:var(--head);font-weight:900;font-size:clamp(11rem,22vw,19rem);line-height:1;color:transparent;-webkit-text-stroke:3px rgba(20,17,15,.13);pointer-events:none}
.hatp-k{opacity:.7;margin-bottom:18px}
.hatp-h{font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.02;max-width:15em;margin-bottom:22px}
.hatp-p{font-size:1.1rem;max-width:34em;margin-bottom:26px}
.hatp-t{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin-bottom:32px}
.hatp-t li{background:#fff;border:2px solid var(--ink);border-radius:99px;padding:5px 13px;font-size:.7rem;font-weight:700}
.hatp-a{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-weight:700;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:3px solid var(--ink);padding-bottom:4px;transition:gap .2s}
.hatp-a:focus-visible{gap:18px}@media (hover:hover) and (pointer:fine){.hatp-a:hover{gap:18px}}
.hatp.on>*:not(.hatp-no){animation:hatpin .65s cubic-bezier(.2,.8,.2,1) both}
.hatp.on>.hatp-h{animation-delay:.06s}
.hatp.on>.hatp-p{animation-delay:.12s}
.hatp.on>.hatp-t{animation-delay:.18s}
.hatp.on>.hatp-a{animation-delay:.24s}
@keyframes hatpin{from{opacity:0;translate:0 20px}}
@media(max-width:900px){
.hats{grid-template-columns:minmax(0,1fr);gap:26px}
.ht-list{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:12px}
.ht{grid-template-columns:auto minmax(0,1fr);gap:10px;padding:12px 14px;border-radius:16px}
.ht svg{display:none}
.ht span{font-size:1.25rem}
.ht.on{translate:0 0}
.ht-stage{min-height:0;padding:40px 26px 36px;border-radius:24px;box-shadow:7px 7px 0 var(--ink)}
.hatp-no{font-size:8rem;right:14px;top:-10px}
}
@media(max-width:480px){.ht span{font-size:1.05rem}.ht i{padding:1px 7px}}
@media(prefers-reduced-motion:reduce){.hatp-bar{display:none}.hatp.on>*:not(.hatp-no){animation:none}}
/* mobile halo fix */
@media(max-width:900px){.hx-ph::before{left:16%;top:3%;width:68%}}
/* about readability */
.hatp-no{display:none}
.ht-stage{background:#fff8ef;background:color-mix(in srgb,var(--c) 26%,#fffaf3);color:#14110f}
.hatp-k{opacity:.8;margin-bottom:16px}
.hatp-h{color:#14110f}
.hatp-p{font-size:1.14rem;line-height:1.75;color:#14110f;max-width:36em}
.hatp-t li{background:var(--c)}
.hatp-bar{background:var(--c);height:8px}
.ht-stage{border-top-width:2.5px}
/* talks light + no hero halo */
.hx-ph::before{display:none}
.tk{background:#fff4e3;background-image:radial-gradient(rgba(20,17,15,.1) 1.2px,transparent 1.2px);background-size:22px 22px;color:var(--ink);border-top:2.5px solid var(--ink)}
.tk .mono{color:var(--ink);opacity:.65}
.vw{border-color:var(--ink);box-shadow:10px 10px 0 var(--ink)}
.vn .mono{color:var(--ink);opacity:.65}
.vl{max-height:640px;gap:14px;padding:2px 12px 14px 2px;scrollbar-width:thin;scrollbar-color:var(--ink) transparent}
.vi{background:#fff;color:var(--ink);border:2.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}
@media (hover:hover) and (pointer:fine){.vi:hover{box-shadow:6px 6px 0 var(--ink)}}
.vi.on{background:var(--or);border-color:var(--ink);box-shadow:6px 6px 0 var(--ink)}
.vi img{border-color:var(--ink)}
.ch span{border-color:var(--ink);background:#fff}
@media(max-width:900px){.vl{max-height:560px}}


/* ===== trophy room grand ===== */
.trp-ban{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;background:#fff;border:3px solid var(--ink);border-radius:20px;box-shadow:8px 8px 0 var(--ink);padding:22px 36px;margin-bottom:34px}
.trp-ban img{display:block;height:auto}
.trp-bl{justify-self:start;width:min(230px,100%)}
.trp-be{justify-self:end;width:76px}
.trp-bt{text-align:center}
.trp-bt .mono{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7;margin-bottom:8px}
.trp-bt b{display:inline-block;font-family:var(--head);font-weight:900;font-size:clamp(1.5rem,3.6vw,2.9rem);line-height:1.08;letter-spacing:.01em;background:linear-gradient(transparent 62%,var(--yel) 62%);padding:0 6px}
.trp-r3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:52px}
.trp-r3 figure{margin:0;border:3px solid var(--ink);border-radius:16px;overflow:hidden;background:#fff;box-shadow:6px 6px 0 var(--ink);cursor:zoom-in;transition:translate .25s,box-shadow .25s}
@media (hover:hover) and (pointer:fine){.trp-r3 figure:hover{translate:0 -4px;box-shadow:10px 10px 0 var(--ink)}}
.trp-r3 img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.trp-duo{display:grid;grid-template-columns:.85fr 1.35fr;gap:44px;align-items:start}
.trp-vid{border:3px solid var(--ink);border-radius:18px;box-shadow:8px 8px 0 var(--ink);background:#fff;overflow:hidden}
.trp-vh{display:flex;justify-content:space-between;gap:10px;padding:10px 16px;border-bottom:3px solid var(--ink);background:var(--yel);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase}
.trp-vf{position:relative;aspect-ratio:16/9;background:#14110f}
.trp-vf iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.trp-vc{padding:14px 18px;font-size:.95rem;line-height:1.5}
.trp-vc a{text-decoration:underline;text-underline-offset:3px}
.trp-board{position:relative;border:3px solid var(--ink);border-radius:24px;background-color:#fff6e6;background-image:radial-gradient(#e6cfae 1.4px,transparent 1.4px);background-size:20px 20px;box-shadow:8px 8px 0 var(--ink);padding:92px 48px 56px;display:grid;grid-template-columns:1fr 1.55fr 1fr;gap:44px;align-items:center}
.trp-ttl{position:absolute;left:50%;top:0;translate:-50% -50%;rotate:-1.5deg;display:flex;align-items:center;gap:16px;background:#fff;border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);padding:12px 24px;border-radius:8px;width:max-content;max-width:92%}
.trp-ttl img{display:block;height:34px;width:auto}
.trp-ttl .mono{display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-bottom:3px}
.trp-ttl b{display:block;font-family:var(--head);font-weight:900;font-size:clamp(.95rem,2.1vw,1.5rem);line-height:1.1}
.trp-ttl em{font-style:normal;background:var(--yel);padding:0 6px}
.trp-pol{position:relative;margin:0;background:#fff;border:3px solid var(--ink);padding:12px 12px 0;box-shadow:7px 7px 0 var(--ink);cursor:zoom-in;transition:rotate .25s,translate .25s}
.trp-pol img{display:block;width:100%;height:auto}
.trp-pol figcaption{padding:10px 2px 12px;font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;text-align:center}
.trp-pol::before{content:"";position:absolute;top:-15px;left:50%;width:92px;height:28px;translate:-50% 0;rotate:-4deg;background:rgba(255,216,77,.85);border:1.5px solid rgba(20,17,15,.25);z-index:2}
@media (hover:hover) and (pointer:fine){.trp-pol:hover{rotate:0deg;translate:0 -5px}}
.trp-p1{rotate:-3.5deg}
.trp-p3{rotate:3deg}
.trp-p3::before{background:rgba(11,181,196,.78);rotate:5deg}
.trp-mid{display:flex;flex-direction:column;align-items:center}
.trp-clipw{position:relative;width:100%;filter:drop-shadow(6px 6px 0 var(--ink));rotate:1.2deg;transition:rotate .25s,translate .25s}
@media (hover:hover) and (pointer:fine){.trp-clipw:hover{rotate:0deg;translate:0 -4px}}
.trp-clip{margin:0;background:#f3ead6;padding:14px;cursor:zoom-in;clip-path:polygon(0 3%,4% 0,12% 2%,22% 0,35% 2%,50% 0,63% 2%,78% 0,90% 2%,100% 0,100% 97%,92% 100%,80% 98%,66% 100%,52% 98%,38% 100%,24% 98%,10% 100%,0 97%)}
.trp-clip img{display:block;width:100%;height:auto}
.trp-pc{position:absolute;top:-34px;left:9%;width:34px;height:84px;z-index:3;rotate:8deg}
.trp-ct{display:block;text-align:center;margin-top:22px;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}
.trp-st{max-width:680px;margin:52px auto 0;text-align:center}
.trp-st p{font-size:1.12rem;line-height:1.65;margin:0 0 14px}
.trp-st .cta{display:flex;justify-content:center;margin-top:20px}
.trp-jf{display:grid;place-items:center;padding:20px 12px}
.trp-pol.trp-sq{width:100%;max-width:560px;rotate:2deg}
@media (hover:hover) and (pointer:fine){.trp-pol.trp-sq:hover{rotate:0deg}}
.trp-in{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;margin-bottom:44px}
.trp-in p{font-size:1.15rem;line-height:1.65;margin:0;max-width:680px}
.trp-stamp{display:inline-flex;align-items:center;gap:8px;border:3px solid var(--ink);padding:10px 16px;border-radius:8px;rotate:-2deg;background:var(--yel);font-family:var(--mono);font-weight:700;letter-spacing:.12em;font-size:.76rem;text-transform:uppercase;box-shadow:4px 4px 0 var(--ink);white-space:nowrap}
.trp-stamp svg{width:20px;height:20px}
.trp-cg{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 22px}
.trp-cert{margin:0;background:#fff;border:3px solid var(--ink);border-radius:14px;box-shadow:5px 5px 0 var(--ink);overflow:hidden;cursor:zoom-in;transition:translate .25s,box-shadow .25s,rotate .25s}
.trp-cert:nth-child(odd){rotate:-.8deg}
.trp-cert:nth-child(even){rotate:.8deg}
@media (hover:hover) and (pointer:fine){.trp-cert:hover{rotate:0deg;translate:0 -5px;box-shadow:9px 9px 0 var(--ink)}}
.trp-cert img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#faf6ee;border-bottom:3px solid var(--ink)}
.trp-cert figcaption{padding:10px 14px 12px;display:flex;flex-direction:column;gap:2px}
.trp-cert b{font-family:var(--head);font-size:1.02rem}
.trp-cert span{font-family:var(--mono);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;opacity:.75}
.trp-lab{display:block;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px}
.trp-s2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;margin-bottom:52px;align-items:start}
.trp-s3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;align-items:start}
.trp-s2 .trp-cert img,.trp-s3 .trp-cert img{aspect-ratio:auto;max-height:460px;object-fit:contain}
@media(max-width:1000px){.trp-cg{grid-template-columns:repeat(3,1fr)}.trp-s3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){
.trp-duo{grid-template-columns:1fr;gap:34px}
.trp-board{grid-template-columns:1fr 1fr;padding:92px 22px 40px;gap:34px 22px}
.trp-mid{grid-column:1/-1;order:-1}
.trp-in{grid-template-columns:1fr;gap:22px}
}
@media(max-width:700px){
.trp-ban{grid-template-columns:1fr 1fr;padding:18px 20px;gap:16px}
.trp-bt{grid-column:1/-1;order:3}
.trp-be{width:60px}
.trp-r3{grid-template-columns:1fr 1fr;gap:14px}
.trp-r3 figure:first-child{grid-column:1/-1}
.trp-cg{grid-template-columns:repeat(2,1fr);gap:20px 14px}
.trp-s2,.trp-s3{grid-template-columns:1fr}
.trp-ttl{flex-direction:column;text-align:center;gap:8px;padding:10px 16px}
.trp-pol figcaption{font-size:.6rem}
}

/* trophy fix */
.trp-board{margin-top:66px}
@media(max-width:700px){.trp-board{margin-top:84px}}


/* ===== ruleset: motion + touch polish ===== */
:root{--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1)}
html{-webkit-tap-highlight-color:transparent}
a,button,[role=button],.ht,label{touch-action:manipulation}
button,[role=button],.ht{-webkit-user-select:none;user-select:none}
h2{text-wrap:balance}
p{text-wrap:pretty}
.js .rv{transform:translateY(16px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out)}
.js .rv.on{opacity:1;transform:none}
.btn{transition:translate 150ms var(--ease-out),box-shadow 150ms var(--ease-out)}
.yrs a:active,.yrs button:active,.pk button:active,.ht:active,.medal:active,.cd:active{translate:2px 2px}
.trp-r3 figure{transition:translate 200ms var(--ease-out),box-shadow 200ms var(--ease-out)}
.trp-pol,.trp-clipw{transition:rotate 220ms var(--ease-out),translate 220ms var(--ease-out)}
.trp-cert{transition:translate 200ms var(--ease-out),box-shadow 200ms var(--ease-out),rotate 220ms var(--ease-out)}
.trp-yb{justify-self:end;border:3px solid var(--ink);background:var(--yel);padding:8px 16px;rotate:2deg;font-weight:700;text-align:center;line-height:1.5;letter-spacing:.1em;box-shadow:4px 4px 0 var(--ink)}
.trp-mo .trp-ban{margin-bottom:34px}
.trp-mo .trp-s2{margin-bottom:0}
.trp-mo .trp-bt b{font-size:clamp(1.3rem,2.8vw,2.3rem)}
.trp-mo .trp-bl{width:min(210px,100%);height:auto}
.js .trp-r3.rv,.js .trp-cg.rv,.js .trp-s2.rv,.js .trp-s3.rv{opacity:1;transform:none;transition:none}
.trp-r3>:nth-child(1),.trp-cg>:nth-child(1),.trp-s2>:nth-child(1),.trp-s3>:nth-child(1){--i:0}
.trp-r3>:nth-child(2),.trp-cg>:nth-child(2),.trp-s2>:nth-child(2),.trp-s3>:nth-child(2){--i:1}
.trp-r3>:nth-child(3),.trp-cg>:nth-child(3),.trp-s2>:nth-child(3),.trp-s3>:nth-child(3){--i:2}
.trp-r3>:nth-child(4),.trp-cg>:nth-child(4),.trp-s2>:nth-child(4),.trp-s3>:nth-child(4){--i:3}
.trp-r3>:nth-child(5),.trp-cg>:nth-child(5),.trp-s2>:nth-child(5),.trp-s3>:nth-child(5){--i:4}
.trp-r3>:nth-child(6),.trp-cg>:nth-child(6),.trp-s2>:nth-child(6),.trp-s3>:nth-child(6){--i:5}
.trp-r3>:nth-child(7),.trp-cg>:nth-child(7),.trp-s2>:nth-child(7),.trp-s3>:nth-child(7){--i:6}
.trp-r3>:nth-child(8),.trp-cg>:nth-child(8),.trp-s2>:nth-child(8),.trp-s3>:nth-child(8){--i:7}
.js .trp-r3.rv.on>figure,.js .trp-cg.rv.on>figure,.js .trp-s2.rv.on>figure,.js .trp-s3.rv.on>figure{animation:trpin 420ms var(--ease-out) backwards;animation-delay:calc(var(--i,0)*50ms)}
@keyframes trpin{from{opacity:0;translate:0 14px}}
.lb.on{animation:lbf 180ms var(--ease-out)}
.lb.on img{animation:lbi 220ms var(--ease-out)}
@keyframes lbf{from{opacity:0}}
@keyframes lbi{from{opacity:0;transform:scale(.96)}}
.lb button{transition:scale 120ms var(--ease-out)}
.lb button:active{scale:.94}
@media(pointer:coarse){.yrs a,.yrs button,.pk button{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.lb button{width:56px;height:56px}}
@media(prefers-reduced-motion:reduce){.js .rv{transform:none;transition:none}.js .trp-r3.rv.on>figure,.js .trp-cg.rv.on>figure,.js .trp-s2.rv.on>figure,.js .trp-s3.rv.on>figure{animation:none}}

/* hover-gated */

/* banner title fix */
.trp-bt b{display:inline;-webkit-box-decoration-break:clone;box-decoration-break:clone;line-height:1.3}
@media(max-width:700px){.trp-mo .trp-bt b{font-size:1.15rem}}

/* test champion one section */
.trp-sub .mono{display:block;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase}
.trp-sub h3{font-family:var(--head);font-weight:900;font-size:clamp(1.7rem,3.4vw,2.7rem);line-height:1.1;margin:8px 0 14px;text-wrap:balance}
.trp-sub>p{font-size:1.12rem;line-height:1.65;max-width:680px;margin:0 0 20px}
.trp-tc .trp-sub .cta{margin:0 0 30px}
.trp-tc .trp-s2{margin-bottom:0}
.trp-hr{border:0;border-top:3px dashed var(--ink);opacity:.35;margin:72px 0}
.trp-split{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:center}
.trp-split .trp-sub>p{margin-bottom:0}
.trp-tc .trp-in{margin:22px 0 40px}
.trp-s1 .trp-cert img{aspect-ratio:auto;max-height:460px;object-fit:contain}
.js .trp-s1.rv{opacity:1;transform:none;transition:none}
.js .trp-s1.rv.on>figure{animation:trpin 420ms var(--ease-out) backwards}
@media(max-width:900px){.trp-split{grid-template-columns:1fr;gap:28px}.trp-hr{margin:52px 0}}
@media(prefers-reduced-motion:reduce){.js .trp-s1.rv.on>figure{animation:none}}


/* ===== awards carousel ===== */
.cr{--w:340px;--h:480px;--R:340px;position:relative;margin:38px auto 0;max-width:1100px}
.cr-view{perspective:1500px;height:calc(var(--h) + 36px);display:grid;place-items:center;overflow-x:clip;touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab;outline-offset:6px}
.cr-view:active{cursor:grabbing}
.cr-ring{position:relative;width:var(--w);height:var(--h);transform-style:preserve-3d;transition:transform 700ms var(--ease-in-out)}
.cr-ring.drag{transition:none}
.cr-card{position:absolute;inset:0;display:flex;flex-direction:column;background:#fff;border:3px solid var(--ink);border-radius:22px;box-shadow:8px 8px 0 var(--ink);overflow:hidden;text-decoration:none;color:var(--ink);backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:rotateY(calc(var(--k)*90deg)) translateZ(var(--R));opacity:.55;transition:opacity 400ms var(--ease-out)}
.cr-card.on{opacity:1}
.cr-stage{position:relative;display:block;height:270px;flex:none;border-bottom:3px solid var(--ink);background:radial-gradient(90% 75% at 50% 0%,color-mix(in srgb,var(--c) 62%,#1d1814),#14110f 80%);overflow:hidden}
.cr-stage:before{content:"";position:absolute;left:50%;top:-8%;width:78%;height:112%;translate:-50% 0;background:conic-gradient(from 180deg at 50% 0,transparent 158deg,rgba(255,255,255,.16) 180deg,transparent 202deg);pointer-events:none}
.cr-stage:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:linear-gradient(transparent,rgba(255,255,255,.07));pointer-events:none}
.cr-art{position:absolute;left:0;top:10px;width:100%;height:calc(100% - 10px)}
.cr-card.on .cr-art{animation:crf 5s ease-in-out infinite}
@keyframes crf{50%{transform:translateY(-5px)}}
.cr-body{display:flex;flex-direction:column;gap:9px;padding:16px 20px 18px;flex:1}
.cr-k{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;opacity:.75}
.cr-t{font-family:var(--head);font-weight:900;font-size:1.4rem;line-height:1.15}
.cr-lg{display:flex}
.cr-go{margin-top:auto;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.cr-ctl{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:22px}
.cr-b{width:48px;height:48px;border-radius:50%;border:3px solid var(--ink);background:var(--yel);box-shadow:3px 3px 0 var(--ink);font-size:1.5rem;line-height:1;color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:translate 150ms var(--ease-out),box-shadow 150ms var(--ease-out)}
.cr-b:active{translate:2px 2px;box-shadow:1px 1px 0 var(--ink)}
.cr-dots{display:flex;gap:12px;align-items:center}
.cr-dot{position:relative;width:14px;height:14px;padding:0;border-radius:50%;border:2.5px solid var(--ink);background:#fff;cursor:pointer;transition:background-color 150ms ease}
.cr-dot:before{content:"";position:absolute;inset:-16px}
.cr-dot[aria-current=true]{background:var(--ink)}
.cr-pp{min-height:44px;padding:0 16px;border-radius:99px;border:3px solid var(--ink);background:#fff;color:var(--ink);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:translate 150ms var(--ease-out),box-shadow 150ms var(--ease-out)}
.cr-pp:active{translate:2px 2px;box-shadow:1px 1px 0 var(--ink)}
@media (hover:hover) and (pointer:fine){.cr-b:hover,.cr-pp:hover{translate:-1px -1px;box-shadow:5px 5px 0 var(--ink)}}
@media(max-width:700px){.cr{--w:276px;--h:450px;--R:276px}.cr-view{perspective:1100px}.cr-stage{height:238px}.cr-t{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){.cr-ring{transition:none}.cr-card{transition:none}}


/* carousel v2: coverflow */
.cr{--X:232px}
.cr-card{transition:none}
.cr-ring{transition:none;transform:none}
@media(max-width:700px){.cr{--X:150px}}

/* carousel logo fix */
.cr-lg .awl .ft{background:transparent;color:var(--ink);padding:0 10px 0 6px;font:700 .8rem var(--mono);letter-spacing:.06em;text-transform:uppercase;align-self:center}


/* carousel v3: bare trophies */
.cr{--w:340px;--h:610px;--X:330px;--s:1}
.cr-view{height:calc(var(--h) + 24px)}
.cr-card{background:none;border:0;box-shadow:none;border-radius:0;overflow:visible;align-items:center;text-align:center}
.cr-stage{display:flex;justify-content:center;align-items:flex-end;height:450px;flex:none;border:0;background:none;overflow:visible}
.cr-stage:before,.cr-stage:after{display:none}
.cr-o{position:relative;flex:none;height:calc(var(--oh)*var(--s));width:calc(var(--oh)*var(--s)*var(--ar));container-type:inline-size;filter:drop-shadow(0 22px 18px rgba(20,17,15,.28));-webkit-box-reflect:below 2px linear-gradient(to bottom,rgba(0,0,0,.26),transparent 17%)}
.cr-o>img{display:block;width:100%;height:100%;-webkit-user-drag:none;user-select:none;pointer-events:none}
.cr-tx{position:absolute;translate:-50% -50%;text-align:center;color:rgba(20,17,15,.9);text-shadow:0 1px 0 rgba(255,255,255,.85),0 0 8px rgba(255,255,255,.7);pointer-events:none}
.cr-tx b{display:block;font:700 calc(var(--fs)*1cqw)/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase}
.cr-tx i{display:block;margin-top:.7em;font:italic 700 calc(var(--fs)*1.55cqw)/1.15 var(--head);letter-spacing:.02em}
.cr-tx.lt{color:#f6e2b0;text-shadow:0 1px 1px rgba(0,0,0,.8)}
.cr-card.on .cr-stage{animation:crf2 6s ease-in-out infinite}
@keyframes crf2{50%{transform:translateY(-5px)}}
.cr-art{display:none}
.cr-body{margin-top:34px;padding:0 6px;gap:8px;align-items:center;flex:none}
.cr-lg{justify-content:center}
.cr-t{font-size:1.55rem}
.cr-go{margin-top:2px}
@media(max-width:700px){.cr{--w:276px;--h:520px;--X:176px;--s:.77}.cr-stage{height:350px}.cr-body{margin-top:28px}.cr-t{font-size:1.3rem}}

/* trophy sizing fix */
.cr-o{height:calc(var(--oh)*var(--s)*1px);width:calc(var(--oh)*var(--s)*var(--ar)*1px)}

/* trophy text fix */
.cr-tx i{white-space:nowrap;font-size:calc(var(--fs)*1.3cqw)}
.cr-o{-webkit-box-reflect:below 2px linear-gradient(to bottom,rgba(0,0,0,.22),transparent 10%)}

/* carousel fixes */
.cr-tx.cr-lt{color:#f6e2b0;text-shadow:0 1px 1px rgba(0,0,0,.85)}
.cr{--h:660px}
@media(max-width:700px){.cr{--h:560px}}

/* carousel captions only on the front award */
.cr-body{transition:opacity 300ms var(--ease-out)}
.cr-card:not(.on) .cr-body{opacity:0}


/* carousel polish: no focus box, plain logos, tidy engraving */
.cr-card,.cr-card:focus,.cr-card:focus-visible,.cr-view:focus,.cr-view:focus-visible{outline:none}
.cr-card:focus-visible .cr-t{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:6px}
.cr-lg .awl{background:transparent;border:0;box-shadow:none;padding:0;border-radius:0;gap:12px;align-items:center}
.cr-lg .awl img{filter:none}
.cr-lg .awl .ft{padding:0;background:none;border:0;box-shadow:none}
.cr-tx{white-space:nowrap;color:rgba(20,17,15,.82);text-shadow:0 1px 0 rgba(255,255,255,.55)}
.cr-tx b{letter-spacing:.12em;font-weight:700}
.cr-tx i{margin-top:.55em;font-size:calc(var(--fs)*1.2cqw)}
.cr-tx.cr-lt{color:#f6e2b0;text-shadow:0 1px 1px rgba(0,0,0,.9)}
.cr-tx.cr-lt b{line-height:1.35}
.cr{--h:690px}
.cr-stage{height:430px}
.cr-body{margin-top:30px}
@media(max-width:700px){.cr{--h:560px}.cr-stage{height:350px}}


/* jug label fix (.ft footer collision), cignithon row under bug hunter */
.awl .ft{background:none;color:var(--ink);padding:0;border:0;box-shadow:none}
.trp-cn{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center;margin-top:44px;padding-top:30px;border-top:3px dashed rgba(20,17,15,.25)}
.trp-cnt p{margin:8px 0 0;font-size:1.02rem;line-height:1.6;max-width:46ch}
.trp-cn .trp-cert{max-width:360px;justify-self:start;margin:0}
@media(max-width:700px){.trp-cn{grid-template-columns:1fr;gap:18px;margin-top:32px}.trp-cn .trp-cert{max-width:none;justify-self:stretch}}


/* carousel size-up + star text fit */
.cr{--w:400px;--h:780px;--X:360px}
.cr-stage{height:520px}
.cr-body{margin-top:34px}
.cr-tx{color:rgba(30,22,14,.9)}
.cr-card[href="#jug"] .cr-tx b{letter-spacing:.07em}
.cr-tx.cr-lt{color:#fff0c4;text-shadow:0 1px 1px rgba(0,0,0,.95)}
.cr-tx.cr-lt b{letter-spacing:.09em}
.cr-card[href="#jug"] .cr-o{filter:drop-shadow(0 0 1.2px rgba(110,72,34,.65)) drop-shadow(0 22px 18px rgba(20,17,15,.28))}
@media(max-width:700px){.cr{--w:300px;--h:600px;--X:176px;--s:.8}.cr-stage{height:410px}}


/* times square billboard section */
.tsq-g{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:start;margin-top:34px}
.tsq-t p{margin:0 0 16px;font-size:1.05rem;line-height:1.65;max-width:56ch}
.tsq-t .badge{display:inline-block;margin-bottom:18px}
.tsq-q{margin:24px 0;padding:16px 20px;background:var(--yel);border:3px solid var(--ink);border-radius:14px;box-shadow:5px 5px 0 var(--ink);font:700 1.25rem/1.35 var(--head);text-wrap:balance}
.tsq-ph{display:grid;gap:30px;padding:6px 6px 10px}
.tsq-p{margin:0;background:#fff;border:3px solid var(--ink);border-radius:14px;box-shadow:7px 7px 0 var(--ink);padding:10px 10px 0;transform:rotate(1.1deg)}
.tsq-p:nth-child(2){transform:rotate(-1.3deg);margin-left:8%}
.tsq-p img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#e9e2d6;border-radius:6px;cursor:zoom-in}
.tsq-p figcaption{padding:10px 4px 12px;font:700 .72rem var(--mono);letter-spacing:.06em;text-transform:uppercase}
.tsq-p.no{display:none}
@media(max-width:860px){.tsq-g{grid-template-columns:1fr;gap:34px}.tsq-p:nth-child(2){margin-left:0}}


/* star text above the notch, bigger Manager trophy */
.cr-tx.cr-lt b{letter-spacing:.06em}
.cr{--h:820px}
.cr-stage{height:560px}
@media(max-width:700px){.cr{--h:640px}.cr-stage{height:450px}}
/* articles page */
.atl-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}
.atl-f{font:700 .82rem var(--mono);text-transform:uppercase;letter-spacing:.06em;background:#fff;color:var(--ink);border:2.5px solid var(--ink);border-radius:99px;padding:9px 16px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform 160ms var(--ease-out),background-color 160ms var(--ease-out),color 160ms var(--ease-out)}
.atl-f b{opacity:.6;margin-left:8px}
.atl-f[aria-pressed="true"]{background:var(--ink);color:var(--cr)}
.atl-f:active{transform:scale(.97)}
.atl-g{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;list-style:none}
.atl-c{position:relative;display:flex;flex-direction:column;gap:12px;background:#fff;border:3px solid var(--ink);border-radius:16px;padding:30px 20px 18px;box-shadow:6px 6px 0 var(--ink);min-height:184px;overflow:hidden;--k:var(--or)}
.atl-c[data-c="lead"]{--k:var(--teal)}
.atl-c[data-c="craft"]{--k:var(--yel)}
.atl-c:before{content:"";position:absolute;left:0;top:0;right:0;height:11px;background:var(--k);border-bottom:3px solid var(--ink)}
.atl-c[hidden]{display:none}
.atl-n{font:700 .74rem var(--mono);letter-spacing:.1em;opacity:.55}
.atl-t{font:900 1.28rem/1.2 var(--head);letter-spacing:-.01em;text-wrap:balance}
.atl-t a{text-decoration:none}
.atl-t a:after{content:"";position:absolute;inset:0}
.atl-m{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;font:700 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em}
.atl-tag{border:2px solid var(--ink);border-radius:99px;padding:2px 10px;background:var(--cr);white-space:nowrap}
.atl-go{text-align:right}
.atl-c.lk:active{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}
@media (hover:hover) and (pointer:fine){.atl-c.lk{transition:transform 180ms var(--ease-out),box-shadow 180ms var(--ease-out)}.atl-c.lk:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}}
@media(max-width:980px){.atl-g{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.atl-g{grid-template-columns:1fr;gap:20px}.atl-t{font-size:1.2rem}}

/* header v2: compact bar + menu panel */
.bar .c{height:62px;gap:14px}
.bar-r{display:flex;align-items:center;gap:12px}
.bar-cta{font:700 .78rem var(--mono);text-transform:uppercase;letter-spacing:.06em;text-decoration:none;background:var(--ink);color:var(--cr);border:2.5px solid var(--ink);border-radius:99px;padding:9px 16px;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform 160ms var(--ease-out),background-color 160ms var(--ease-out),color 160ms var(--ease-out)}
.bar-cta:active{transform:scale(.97)}
.mbtn{display:inline-flex;align-items:center;gap:10px;font:700 .78rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);background:#fff;border:2.5px solid var(--ink);border-radius:99px;padding:8px 14px 8px 16px;box-shadow:3px 3px 0 var(--ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform 160ms var(--ease-out),box-shadow 160ms var(--ease-out),background-color 160ms var(--ease-out)}
.mbtn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.mbtn-i{position:relative;width:18px;height:12px;display:block}
.mbtn-i i{position:absolute;left:0;right:0;height:2.5px;background:var(--ink);border-radius:2px;transition:transform 260ms var(--ease-out),top 260ms var(--ease-out)}
.mbtn-i i:first-child{top:1px}
.mbtn-i i:last-child{top:8px}
.bar.open .mbtn{background:var(--yel)}
.bar.open .mbtn-i i:first-child{top:5px;transform:rotate(45deg)}
.bar.open .mbtn-i i:last-child{top:5px;transform:rotate(-45deg)}
.mnu{position:absolute;left:0;right:0;top:100%;background:var(--cr);border-bottom:3px solid var(--ink);max-height:calc(100vh - 62px);max-height:calc(100dvh - 62px);overflow:auto;visibility:hidden;opacity:0;transform:translateY(-10px);transition:opacity 220ms var(--ease-out),transform 220ms var(--ease-out),visibility 0s linear 220ms}
.bar.open .mnu{visibility:visible;opacity:1;transform:none;transition-delay:0s}
.mnu ol{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;padding:30px 0 22px}
.mnu li{opacity:0;transform:translateY(8px);transition:opacity 260ms var(--ease-out),transform 260ms var(--ease-out)}
.bar.open .mnu li{opacity:1;transform:none;transition-delay:calc(var(--i)*35ms + 50ms)}
.ml{display:flex;align-items:baseline;gap:16px;text-decoration:none;background:#fff;border:3px solid var(--ink);border-radius:16px;padding:16px 20px;box-shadow:5px 5px 0 var(--ink);transition:transform 180ms var(--ease-out),box-shadow 180ms var(--ease-out),background-color 180ms var(--ease-out)}
.ml i{font:700 .78rem var(--mono);font-style:normal;opacity:.55}
.ml span{font:900 clamp(1.4rem,2.6vw,2rem)/1.1 var(--head);letter-spacing:-.01em}
.ml em{margin-left:auto;font:700 .68rem var(--mono);font-style:normal;text-transform:uppercase;letter-spacing:.08em;opacity:.65;text-align:right}
.ml[aria-current]{background:var(--c,var(--yel))}
.ml:active{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}
.mnu-f{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:0 0 28px;font:700 .74rem var(--mono);text-transform:uppercase;letter-spacing:.08em}
.mnu-st{display:inline-flex;align-items:center;gap:8px}
.mnu-st:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--grn);animation:pl 1.6s infinite}
.mnu-so{display:flex;flex-wrap:wrap;gap:8px 22px}
.mnu-so a{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
.mnu-bd{position:fixed;left:0;right:0;top:62px;bottom:0;background:rgba(20,17,15,.38);opacity:0;visibility:hidden;z-index:-1;transition:opacity 220ms var(--ease-out),visibility 0s linear 220ms}
.bar.open .mnu-bd{opacity:1;visibility:visible;transition-delay:0s}
@media (hover:hover) and (pointer:fine){.bar-cta:hover{background:var(--yel);color:var(--ink)}.mbtn:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-1px,-1px)}.ml:hover{background:var(--c,var(--yel));transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}.mnu-so a:hover{background:var(--yel)}}
@media(max-width:900px){.bar .c{flex-wrap:nowrap;height:62px;padding-top:0;padding-bottom:0}}
@media(max-width:700px){.mnu ol{grid-template-columns:1fr;gap:12px;padding:22px 0 16px}.ml{padding:14px 16px}.bar-cta{display:none}}
@media(max-width:420px){.ml em{display:none}}
@media(prefers-reduced-motion:reduce){.mnu,.mnu li,.mbtn-i i,.mnu-bd{transition:none}}
/* home trophy shelf */
.shf{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.shf-i{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:3px solid var(--ink);border-radius:16px;box-shadow:6px 6px 0 var(--ink);padding:26px 14px 18px;overflow:hidden;text-decoration:none;transition:transform 180ms var(--ease-out),box-shadow 180ms var(--ease-out)}
.shf-i:before{content:"";position:absolute;left:0;top:0;right:0;height:11px;background:var(--c);border-bottom:3px solid var(--ink)}
.shf-o{display:flex;align-items:flex-end;justify-content:center;width:100%;height:calc(var(--ih)*1px);margin-bottom:14px}
.shf-o img{display:block;max-width:86%;max-height:100%;width:auto;height:auto;filter:drop-shadow(0 12px 10px rgba(20,17,15,.22))}
.shf-y{font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.65}
.shf-i b{font:900 1.15rem/1.15 var(--head);margin:6px 0 4px;text-wrap:balance}
.shf-s{font:700 .7rem var(--mono);text-transform:uppercase;letter-spacing:.06em;opacity:.7}
.shf-i:active{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}
@media (hover:hover) and (pointer:fine){.shf-i:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}}
@media(max-width:480px){.shf{gap:14px}.shf-i{padding:24px 8px 14px}.shf-o{height:calc(var(--ih)*.7px)}.shf-i b{font-size:1rem}}

.bar .mnu .c{display:block;height:auto;padding-top:0;padding-bottom:0}

.ml em{white-space:nowrap}

/* header v3: visible inline nav on desktop */
.nv2{display:none}
@media(min-width:1100px){
.bar .c{justify-content:space-between}
.nv2{display:flex;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0}
.nv2 a{font:700 .76rem var(--mono);text-transform:uppercase;letter-spacing:.06em;text-decoration:none;white-space:nowrap;color:var(--ink);padding:8px 13px;border:2.5px solid transparent;border-radius:99px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color 160ms var(--ease-out),border-color 160ms var(--ease-out),transform 160ms var(--ease-out),box-shadow 160ms var(--ease-out)}
.nv2 a:active{transform:scale(.96)}
.nv2 a[aria-current]{background:var(--yel);border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}
.bar .live{display:none}
.bar .mbtn,.bar .mnu,.bar .mnu-bd{display:none}
}
@media (min-width:1100px) and (hover:hover) and (pointer:fine){.nv2 a:hover{background:#fff;border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.nv2 a[aria-current]:hover{background:var(--yel)}}

/* speaking v2: one big map */
.eh.sph{padding:76px 0 56px}
.eh.sph .eh-g{display:block}
.eh.sph p.lead{max-width:36em}
.spm{padding:64px 0 84px}
.spm>.c{max-width:1500px}
.spm .mp{aspect-ratio:770/220;box-shadow:10px 10px 0 var(--or);outline:none}
.spm .mp svg{height:100%}
.spm .yrs{margin-top:28px}
.mpn{cursor:pointer;outline:none}
.mpn .dot{fill:var(--or);stroke:var(--cr);stroke-width:2;transition:fill 180ms var(--ease-out)}
.mpn .ring{fill:none;stroke:var(--yel);stroke-width:2;opacity:0;transform-box:fill-box;transform-origin:center}
.mpn text{font:700 10px var(--mono);fill:var(--cr);paint-order:stroke;stroke:var(--ink);stroke-width:3.5px;stroke-linejoin:round;text-transform:uppercase;letter-spacing:.05em;pointer-events:none}
.mpn.cur .dot{fill:var(--teal)}
.mpn.cur .ring{animation:ring 1.8s ease-out infinite}
.mpn.cur text{fill:var(--yel)}
.mpn:focus-visible .dot{fill:var(--yel);stroke-width:3}
@media (hover:hover) and (pointer:fine){.mpn:hover .dot{fill:var(--yel)}.mpn.cur:hover .dot{fill:var(--teal)}}
.spm-hint{display:none;margin-top:12px;opacity:.7}
@media(max-width:820px){
.eh.sph{padding:48px 0 40px}
.spm{padding:56px 0 64px}
.spm-s{overflow-x:auto;padding:0 12px 14px 0;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.spm .mp{min-width:780px}
.spm-hint{display:block}
}

/* trophy print: text sits on the front face of the base, years never italic */
.cr-tx i{font-style:normal}
.cr-tx.cr-lt{transform:perspective(260px) rotateY(-32deg) rotateZ(1.5deg);transform-origin:50% 50%;color:#e9cf94;opacity:.92;text-shadow:0 1px 0 rgba(0,0,0,.9),0 0 1px rgba(255,236,190,.45)}

/* home trophy room: carousel */
.rc{background:radial-gradient(circle at 12% 18%,#ffdcbc 0,transparent 42%),radial-gradient(circle at 92% 72%,#ffb48a 0,transparent 46%),var(--cr)}
.rc .rv>.btn{margin-top:20px}
.rc .cr{margin-top:8px}
.cr-card[href$="#jug"] .cr-tx b{letter-spacing:.07em}
.cr-card[href$="#jug"] .cr-o{filter:drop-shadow(0 0 1.2px rgba(110,72,34,.65)) drop-shadow(0 22px 18px rgba(20,17,15,.28))}

/* mobile overlap fixes */
@media(max-width:700px){
.spk{display:none}
.cr{--X:262px}
.cr-card:not(.on){opacity:.32!important}
.cr-card:not(.on) .cr-tx{opacity:0}
}

/* recs tabs + Topmate mentee reviews */
.rtb-s{padding:46px 0 0;background:#fff;background-image:radial-gradient(#e9d8c4 1.2px,transparent 1.2px);background-size:22px 22px}
.rtb{display:flex;align-items:flex-end;gap:10px;border-bottom:3px solid var(--ink)}
.rtb-b{position:relative;font:700 .84rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);background:var(--cr);border:3px solid var(--ink);border-bottom:0;border-radius:16px 16px 0 0;padding:13px 24px 11px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background-color 160ms var(--ease-out),padding 160ms var(--ease-out)}
.rtb-b.on{background:var(--yel);padding:17px 28px 14px;margin-bottom:-3px;z-index:1}
.rtb-b:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
@media (hover:hover) and (pointer:fine){.rtb-b:not(.on):hover{background:#fff}}
.rtb-s~#wall,.rtb-s~#tpm{padding-top:52px}
#wall[hidden],#full[hidden],#tpm[hidden]{display:none!important}
.tpm-g{columns:3 300px;column-gap:26px;margin-top:34px}
.tpm-c{break-inside:avoid;margin:0 0 26px;position:relative;overflow:hidden;background:#fff;border:3px solid var(--ink);border-radius:16px;box-shadow:6px 6px 0 var(--ink);padding:30px 22px 18px}
.tpm-c:before{content:"";position:absolute;left:0;top:0;right:0;height:11px;background:var(--k);border-bottom:3px solid var(--ink)}
.tpm-c blockquote{margin:0 0 16px;font-size:1.02rem;line-height:1.6}
.tpm-c.s blockquote{font:900 1.45rem/1.25 var(--head)}
.tpm-c figcaption{font:700 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em;opacity:.7}
@media(max-width:700px){.tpm-g{columns:1}.rtb-s{padding-top:30px}.rtb{gap:6px}.rtb-b{flex:1 1 0;padding:12px 6px 10px;font-size:.68rem;letter-spacing:.03em;text-align:center}.rtb-b.on{padding:15px 6px 12px}}

/* carousel arrows: plain black, no background */
.cr-ar{position:absolute;top:calc(var(--h)*.3);z-index:60;width:56px;height:84px;margin-top:-42px;padding:0;border:0;border-radius:10px;background:none;box-shadow:none;color:var(--ink);cursor:pointer;display:grid;place-items:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:translate 160ms var(--ease-out),opacity 160ms var(--ease-out)}
.cr-ar svg{width:26px;height:44px;display:block}
.cr-pv{left:4px}.cr-nx{right:4px}
.cr-ar:active{opacity:.55}
.cr-ar:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
@media (hover:hover) and (pointer:fine){.cr-pv:hover{translate:-4px 0}.cr-nx:hover{translate:4px 0}}

/* anchor lands on the section heading */
.ch2{scroll-margin-top:104px}

/* tighter vertical rhythm: Awards + Recommendations */
.cr{--h:740px}
@media(max-width:700px){.cr{--h:640px}}
.ah{padding-bottom:44px}
.ah~.sp,.ah~.fin{padding-top:76px;padding-bottom:76px}
.rh{padding-bottom:64px}
.rtb-s{padding-top:40px}
.rtb-s~#wall,.rtb-s~#tpm{padding-top:36px}
.rh~.sp{padding-bottom:72px}
.rh~.fx,.rh~.fin{padding-top:72px;padding-bottom:72px}
@media(max-width:900px){
.ah~.sp,.ah~.fin{padding-top:56px;padding-bottom:56px}
.rh~.sp{padding-bottom:56px}
.rh~.fx,.rh~.fin{padding-top:56px;padding-bottom:56px}
}

/* subtle scroll-down hint */
.sdh{position:fixed;left:50%;bottom:14px;z-index:45;width:48px;height:40px;margin-left:-24px;padding:0;border:0;background:none;color:var(--ink);cursor:pointer;display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out);-webkit-tap-highlight-color:transparent;filter:drop-shadow(0 0 5px rgba(252,228,190,.95))}
.sdh svg{width:26px;height:15px;display:block;opacity:.7;animation:sdh-b 2.2s ease-in-out infinite}
.sdh.on{opacity:1;pointer-events:auto;transform:none}
.sdh:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-radius:10px}
@keyframes sdh-b{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media(prefers-reduced-motion:reduce){.sdh svg{animation:none}}

/* article cards: long source domains wrap instead of overrunning */
.atl-m{flex-wrap:wrap;row-gap:8px}
.atl-go{min-width:0;overflow-wrap:anywhere;letter-spacing:.03em}
