/* Revision four: richer visual evidence, human engagement, and readable motion. */
#work .visual{padding:18px!important;min-height:0!important;aspect-ratio:1.6;background:var(--subtle)!important;overflow:hidden}#work .loom-preview{position:relative;width:100%;height:100%;inset:auto;transform:none;overflow:visible;background:none;border:0;box-shadow:none}#work .work-ui-image{display:block;width:100%;height:100%;object-fit:contain;border-radius:8px;box-shadow:0 10px 26px #10273530;transition:transform .5s,box-shadow .5s}#work .work-card:hover .work-ui-image{transform:perspective(900px) rotateX(2deg) scale(1.025);box-shadow:0 15px 30px #10273540}#work .loom-recorder{right:9px;bottom:9px;width:58px;height:58px;border:3px solid #f8f4e7;box-shadow:0 5px 20px #10273560;z-index:2}#work .loom-recorder img{object-fit:cover;width:100%;height:100%}#work .loom-recording-label{display:block!important;position:absolute;top:12px;right:10px;left:auto;background:#172e38;color:white;padding:5px 8px;border-radius:4px;font-size:9px;z-index:2}
/* Higher contrast for every KPI hover state, in both themes. */
html body .metric:hover,html body .metric:focus-visible{background:#18333f!important;color:#fff!important}html body .metric:hover strong,html body .metric:focus-visible strong{color:#f1d5a4!important}html body .metric:hover span,html body .metric:hover small,html body .metric:focus-visible span,html body .metric:focus-visible small{color:#edf3f2!important}html[data-theme=dark] .metric:not(:hover) small{color:#b9cbc9!important}
/* Profile feature: public-facing data, snapshot date, and supported badge. */
.linkedin-section{background:var(--page);padding:45px 0 72px}.linkedin-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(28px,5vw,85px);align-items:center}.linkedin-intro h2{font-size:clamp(30px,3vw,46px)!important;line-height:1.2;color:var(--text);margin:0 0 20px}.linkedin-intro p:not(.eyebrow){max-width:520px;color:var(--secondary);font-size:16px}.linkedin-profile{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:var(--card-shadow)}.linkedin-cover{height:88px;background:radial-gradient(ellipse at 30% 170%,#a88d5f88,transparent 65%),#18323f;display:flex;justify-content:space-between;align-items:center;padding:25px 28px;color:#f0debc}.linkedin-cover span{font-size:10px;letter-spacing:.14em!important}.linkedin-cover b{display:grid;place-items:center;font:bold 24px Arial;background:white;color:#0a66c2;width:32px;height:32px;border-radius:3px}.linkedin-details{padding:0 28px 26px}.linkedin-details>img{width:76px;height:76px;border:4px solid var(--surface);border-radius:50%;object-fit:cover;margin-top:-28px;position:relative}.linkedin-details h3{font-size:25px!important;margin:8px 0}.linkedin-details>p{font-size:14px;color:var(--secondary);margin:0 0 15px}.linkedin-social-proof{display:flex;gap:24px;flex-wrap:wrap;color:var(--secondary);font-size:13px}.linkedin-social-proof strong{font-size:21px;color:var(--text);margin-right:4px}.linkedin-details>small{display:block;font-size:10px;color:var(--secondary);margin-top:8px}.linkedin-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:20px}.linkedin-actions .btn{font-size:13px!important}.linkedin-embed{margin-top:16px;font-size:12px;color:var(--secondary)}.linkedin-embed summary{cursor:pointer;min-height:30px}.LI-profile-badge{margin-top:12px;max-width:100%;overflow:hidden}
/* The existing native vector thumbnails become animated interactive stages. */
#expertise .cap,#expertise .cap-inner{min-height:410px}#expertise .cap-front{grid-template-columns:1fr 1.2fr;gap:14px 34px;align-content:center}#expertise .cap-flow{height:270px;margin:0;border:1px solid #ccb990;border-radius:12px;background:radial-gradient(ellipse at 75% 10%,#fff4d9,transparent 70%),#f8f7f1;padding:15px;overflow:hidden;box-shadow:0 12px 30px #10273510}#expertise .cap-flow svg{width:100%;height:168px;overflow:visible}#expertise .cap-flow-panel{fill:transparent}#expertise .cap-flow-node{transition:filter .3s,stroke-width .3s;filter:drop-shadow(0 4px 3px #10273516)}#expertise .cap-flow-node.flow-active{stroke:#a77f38;stroke-width:2.5px;filter:drop-shadow(0 0 7px #bb934b70)}#expertise .cap-flow-line{stroke-dasharray:5 5;animation:flow-dash 2s linear infinite}#expertise .cap-flow-text{font-size:6px!important}.workflow-top{display:flex;justify-content:space-between;color:#46616a;font-size:9px;text-transform:uppercase;letter-spacing:.1em!important}.workflow-top span:last-child{color:#8c6b34}.workflow-controls{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.workflow-controls button{border:1px solid #b8c3bd;color:#294453;background:#fff;border-radius:4px;padding:6px 8px;min-height:30px;font-size:9px;cursor:pointer}.workflow-controls button[aria-pressed=true]{color:#fff;background:#254956;border-color:#254956}.workflow-controls button:hover{transform:translateY(-2px)}.workflow-step-note{font-size:11px!important;text-align:center;color:#435d64!important;margin:8px 0 0!important;min-height:16px}.workflow-hint{grid-column:1;font-size:11px!important;color:var(--accent)!important}.cap .flip-cue{cursor:pointer;padding:8px;border:1px solid var(--border);border-radius:5px;background:var(--surface);font-size:11px}.cap-back .flip-cue{background:#1c3543;color:#f0d5a8!important}.cap-back{position:relative!important;transform:none!important;min-height:270px}.cap-front{position:relative!important;inset:auto!important;min-height:410px}.cap .cap-inner{transform:none!important;min-height:0!important}.cap .cap-back{display:none!important}.cap.is-flipped .cap-front{display:none!important}.cap.is-flipped .cap-back{display:flex!important}.cap{min-height:0!important}.cap-back h3,.cap-back .cap-kpi span{color:#f6f4ee!important}.cap-back p{color:#d5e0de!important}@keyframes flow-dash{to{stroke-dashoffset:-20}}
/* Animated process, hover/focus accelerate the motion. */
.step{cursor:default}.process-visual svg>*{transform-box:fill-box;transform-origin:center}.step:nth-child(1) .process-visual svg{animation:diagnose-search 5s ease-in-out infinite}.step:nth-child(2) .process-visual path:first-child{animation:architect-connect 4s linear infinite}.step:nth-child(2) .process-visual circle{animation:node-pulse 3s ease-in-out infinite}.step:nth-child(3) .process-visual rect.visual-fill{animation:execute-card 3.2s ease-in-out infinite}.step:nth-child(3) .process-visual rect.visual-fill:nth-of-type(3){animation-delay:.5s}.step:nth-child(4) .process-visual .visual-bold{stroke-dasharray:260;animation:compound-grow 4s ease-in-out infinite}.step:hover .process-visual svg,.step:focus-visible .process-visual svg{filter:drop-shadow(0 7px 5px #a5814530)}.step:hover .process-visual svg *,.step:focus-visible .process-visual svg *{animation-duration:1.5s}.step:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@keyframes diagnose-search{0%,100%{transform:translate(0,0)}35%{transform:translate(9px,-4px)}70%{transform:translate(-7px,4px)}}@keyframes architect-connect{to{stroke-dashoffset:-44}}@keyframes node-pulse{50%{transform:scale(1.15);opacity:.65}}@keyframes execute-card{50%{transform:translateY(-7px)}}@keyframes compound-grow{0%{stroke-dashoffset:260;opacity:.2}60%,100%{stroke-dashoffset:0;opacity:1}}
/* Dedicated people-led engagement section. */
#engagement{background:var(--subtle);padding:64px 0}.engage-panel{padding:0!important;border:0!important}.engage-head{display:block;max-width:850px;margin-bottom:24px}.engage-head h2{font-size:clamp(30px,3.3vw,44px)!important;line-height:1.2;color:var(--text);margin:0 0 16px}.engage-head p:not(.eyebrow){max-width:740px;font-size:15px!important}.visual-note{color:var(--secondary);font-size:10px;margin:0 0 15px}.models{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.model{padding:0 0 22px!important;display:flex!important;flex-direction:column;align-items:stretch!important;gap:0!important;justify-content:flex-start!important;overflow:hidden;border-radius:12px;box-shadow:var(--card-shadow);min-width:0}.engagement-photo{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;display:block;transition:transform .6s;max-width:none!important}.model:hover .engagement-photo{transform:scale(1.045)}.model strong{padding:20px 18px 5px;font-size:17px;margin:0}.model span{padding:0 18px;max-width:none!important;font-size:13px;color:var(--secondary)}.model:after{content:'Explore this fit ↗';padding:20px 18px 0;font-size:11px;color:var(--accent);margin-top:auto}
/* All markets visible immediately; never a horizontally scrolling map. */
.market-map-top{display:none}.map-scroll{overflow:visible;background:var(--subtle)}.market-map{min-width:0!important;width:100%;aspect-ratio:1000/480}.map-land{top:20px;bottom:30px}.market-pin{display:none!important}.map-label-layer{position:absolute;inset:20px 0 30px;width:100%;height:calc(100% - 50px);overflow:visible}.map-label-layer line{stroke:var(--accent);stroke-width:1;opacity:.7}.map-label-layer circle{fill:var(--accent);stroke:var(--surface);stroke-width:1.5}.map-label-layer text{fill:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:12px;font-weight:600;paint-order:stroke;stroke:var(--subtle);stroke-width:4px;stroke-linejoin:round}.market-choice-list{display:none}.map-coordinate{display:none}.map-mobile-labels{display:none}.map-credit{margin:10px 0 20px}.map-land svg{opacity:.65}.map-grid{opacity:.6}
/* The carousel has slide controls and swipe, without a persistent scrollbar. */
.testimonial-slider{scrollbar-width:none;padding-bottom:14px}.testimonial-slider::-webkit-scrollbar{display:none}.preview-quote .quote-top{min-height:100px}.preview-quote .quote-logo{max-width:250px!important;width:80%!important;height:86px!important;font-size:23px!important;display:flex;align-items:center;justify-content:flex-end}.preview-quote .quote-logo img{width:100%!important;height:86px!important;max-height:86px!important;max-width:250px!important;background:white;padding:13px 17px!important;object-fit:contain;border-radius:8px}.preview-quote .quote-mark{font-size:54px!important;margin-right:10px}.testimonial-controls>span:after{content:' · Slides every 5 seconds';font-size:11px;margin-left:10px}.ticker-track{animation-duration:100s!important}
@media(max-width:1100px){.models{grid-template-columns:repeat(3,minmax(0,1fr))}.linkedin-layout{grid-template-columns:1fr 1.15fr}.linkedin-actions{gap:10px}#expertise .cap-front{grid-template-columns:1fr 1.2fr}}
@media(max-width:800px){.linkedin-layout{grid-template-columns:1fr}.linkedin-intro h2 br{display:none}.linkedin-section{padding:30px 0 50px}.models{grid-template-columns:repeat(2,minmax(0,1fr))}.map-label-layer text{font-size:14px}#expertise .cap-front{display:block;min-height:0}#expertise .cap-flow{height:280px;margin-top:20px}#expertise .cap-flow svg{height:168px}.workflow-hint{margin-top:14px!important}}
@media(max-width:620px){#work .visual{padding:12px!important}#work .loom-recorder{width:48px;height:48px}.linkedin-details{padding:0 20px 23px}.linkedin-cover{padding:23px 20px}.linkedin-cover span{font-size:8px}.linkedin-social-proof{gap:16px}.linkedin-social-proof strong{font-size:20px}.linkedin-actions{display:grid}.linkedin-actions .text-link{justify-content:center}.linkedin-embed{display:none}#engagement{padding:44px 0}.models{gap:14px}.model strong{font-size:15px;padding:16px 13px 7px}.model span{font-size:12px;padding:0 13px}.model:after{padding:16px 13px 0;font-size:10px}.engagement-photo{aspect-ratio:1/1}.market-map{aspect-ratio:1000/450}.map-label-layer text,.map-label-layer line{display:none}.map-land{top:0;bottom:0}.map-label-layer{inset:0;height:100%}.map-mobile-labels{display:grid;grid-template-columns:1fr 1fr;gap:8px 15px;padding:12px 18px;background:var(--subtle)}.map-mobile-labels span{display:flex;gap:7px;font-size:12px;align-items:center;color:var(--text)}.map-mobile-labels b{color:var(--accent);font-size:10px}.map-credit{font-size:9px}.testimonial-controls>span:after{display:block;margin:4px 0 0;font-size:10px}.preview-quote .quote-logo img{max-height:78px!important}.preview-quote .quote-top{min-height:90px}}
@media(prefers-reduced-motion:reduce){.process-visual svg,.process-visual svg *,.cap-flow-line{animation:none!important}.work-ui-image,.engagement-photo{transition:none!important}.step:hover,.work-card:hover .work-ui-image{transform:none!important}.testimonial-controls>span:after{content:' · Motion paused by preference'}}
#work .eyebrow{color:var(--accent)!important}.market-map{max-width:1100px;aspect-ratio:1000/430;margin-inline:auto}.map-land{inset:0}.map-label-layer{inset:0;height:100%}.map-mobile-number{display:none}.market-map-card{background:var(--subtle)}
@media(max-width:620px){.map-label-layer .map-mobile-number{display:block;font-size:27px;stroke-width:7px}.map-label-layer circle{r:7px}.map-mobile-labels{padding-top:18px}}
@media(max-width:620px){#expertise .cap-flow{height:auto;min-height:280px}#expertise .cap-flow svg{height:150px}.workflow-controls button{min-height:44px;min-width:44px;font-size:10px}.workflow-step-note{margin-top:12px!important}}
.testimonial-controls[data-paused=true]>span:after{content:' · Slideshow paused'}
