/* Native portfolio motion. Scoped to #work; no dependency or page-wide overflow masking. */
#work{background:#0b1317;color:#f5f6ef;--cs-accent:#d8ff76;--cs-rgb:216,255,118;--cs-border:#2c3a3f;color-scheme:dark}
#work>.wrap>.section-head{padding-bottom:1rem}#work>.wrap>.section-head h2{color:#f5f6ef}#work>.wrap>.section-head h2 em{color:#d8ff76}#work>.wrap>.section-head p{color:#a6b6ba}
#work .cs-case{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;padding:3rem 0 3.5rem;border-top:1px solid #334044;align-items:start;scroll-margin-top:100px}
#work #netrivo{--cs-accent:#91d6fb;--cs-rgb:145,214,251}#work #noirhome{--cs-accent:#edc99b;--cs-rgb:237,201,155}
#work .cs-case>*{min-width:0}#work .cs-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem 1rem;margin-bottom:1rem}#work .cs-kicker .eyebrow{color:#97a9af;font-size:.68rem;letter-spacing:.1em;margin:0}
#work .cs-state{display:inline-flex;align-items:center;gap:.4rem;font-size:.7rem;color:var(--cs-accent)}#work .cs-state i{width:5px;height:5px;background:currentColor;border-radius:50%}
#work .cs-copy h3{font-size:clamp(2.65rem,5.6vw,4.6rem);letter-spacing:-.06em;font-weight:800;line-height:1.08;color:#f5f6ef}#work .cs-copy h3 em{color:var(--cs-accent)}
#work .cs-lead{font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.45;color:#e0e8e8;margin-top:1rem;max-width:30ch;letter-spacing:-.025em}#work .cs-description{color:#9eafb5;font-size:.88rem;line-height:1.75;margin-top:.8rem;max-width:49ch}
#work .cs-showcase{border:1px solid #354348;border-radius:20px;background:linear-gradient(150deg,#142127,#0a1116 62%);overflow:hidden;position:relative;isolation:isolate;box-shadow:0 28px 70px #0003}
#work .cs-showcase-top{display:flex;align-items:center;gap:.65rem;padding:1rem 1rem 0;position:relative;z-index:2}#work .cs-product-mark{display:grid;place-items:center;flex:none;width:36px;height:36px;background:var(--cs-accent);border-radius:10px;color:#101a1f;font-size:.7rem;font-weight:800;letter-spacing:-.025em}
#work .cs-showcase-top>div{display:grid;gap:2px;min-width:0}#work .cs-showcase-top strong{font-size:.9rem;color:#edf2ef}#work .cs-showcase-top>div>span{font-size:.65rem;color:#9bacb1}#work .cs-demo-label{margin-left:auto;color:#93a6ab;font-size:.51rem;letter-spacing:.07em;max-width:9ch;line-height:1.5;text-align:right}
#work .cs-stage{position:relative;isolation:isolate;height:370px;perspective:1100px;overflow:hidden;display:grid;place-items:center;padding:45px 22px 37px}
#work .cs-field{position:absolute;inset:0;width:100%;height:100%;color:var(--cs-accent);opacity:.42;animation:cs-field 12s ease-in-out infinite alternate;z-index:-2;pointer-events:none}
#work .cs-field-lines{fill:none;stroke:currentColor;stroke-width:.6;opacity:.32}#work .cs-field-dots{fill:currentColor;opacity:.6}#work .cs-signal{fill:none;stroke:currentColor;stroke-width:2;stroke-dasharray:20 640;animation:cs-signal 6s linear infinite;opacity:.9}
#work .cs-layer{position:absolute;left:11%;right:9%;top:75px;height:240px;border:1px solid rgba(var(--cs-rgb),.15);border-radius:14px;background:rgba(var(--cs-rgb),.025);z-index:-1;pointer-events:none}
#work .cs-layer-one{transform:translate(12px,-14px) rotate(-6deg);animation:cs-layer 8s ease-in-out infinite alternate}#work .cs-layer-two{transform:translate(-12px,-5px) rotate(5deg);opacity:.6}
#work .cs-app{position:relative;width:100%;max-width:460px;border:1px solid #46565c;border-radius:13px;background:linear-gradient(145deg,#203139,#142128);box-shadow:0 18px 32px #0007,0 0 36px rgba(var(--cs-rgb),.06);transform:rotate(-2deg);animation:cs-float 8s ease-in-out infinite;will-change:auto}
#work .cs-app-bar{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .75rem;border-bottom:1px solid #3a4b50;border-radius:12px 12px 0 0;color:#d5e2e4;background:#1b2a30;font-size:.7rem}
#work .cs-app-bar>span{display:flex;align-items:center;gap:.4rem}#work .cs-app-bar svg{width:14px;height:14px;color:var(--cs-accent)}#work .cs-app-bar small{font:500 .48rem/1.4 ui-monospace,monospace;letter-spacing:.06em;color:#96a9ae}
#work .cs-app-body{padding:1rem .85rem}#work .cs-app-heading{display:flex;justify-content:space-between;gap:.6rem;align-items:center}#work .cs-app-heading>strong{font-size:1.1rem;line-height:1.3;letter-spacing:-.04em;color:#eef6f4}#work .cs-app-heading strong>span{display:block;color:var(--cs-accent)}
#work .cs-date{display:grid;gap:1px;font-size:.48rem;color:#a8babc;text-align:center;background:#263941;border:1px solid #496067;border-radius:8px;padding:.35rem .65rem}#work .cs-date b{font-size:.85rem;color:#edf5f3}
#work .cs-resources{display:grid;gap:.35rem;margin:.85rem 0}#work .cs-resources>div{display:flex;gap:.5rem;align-items:center;padding:.43rem .55rem;border:1px solid #34494f;border-radius:6px;background:#1b2b32;opacity:.45;transition:opacity .5s,border-color .5s}
#work .cs-resources svg{width:17px;height:17px;color:var(--cs-accent)}#work .cs-resources span{font-size:.68rem;display:flex;justify-content:space-between;gap:.4rem;align-items:center;flex:1;color:#e4eded}#work .cs-resources small{font-size:.5rem;color:#a9bbbe}#work .cs-resources i{font-size:.65rem;font-style:normal;color:var(--cs-accent);opacity:0}
#work [data-stage="0"] [data-cs-resource="0"],#work [data-stage="1"] [data-cs-resource="0"],#work [data-stage="1"] [data-cs-resource="1"],#work [data-stage="2"] [data-cs-resource],#work [data-stage="3"] [data-cs-resource]{opacity:1;border-color:rgba(var(--cs-rgb),.45)}
#work [data-stage="0"] [data-cs-resource="0"] i,#work [data-stage="1"] [data-cs-resource="0"] i,#work [data-stage="1"] [data-cs-resource="1"] i,#work [data-stage="2"] [data-cs-resource] i,#work [data-stage="3"] [data-cs-resource] i{opacity:1}
#work .cs-booking{position:relative;padding:4px 0}#work .cs-booking-track{display:flex;position:absolute;inset:0;justify-content:space-between;padding:0 6px;opacity:.25}#work .cs-booking-track i{border-left:1px dashed #b8c9cd;height:100%}
#work .cs-booking-event{display:flex;position:relative;align-items:center;gap:.6rem;margin-right:15%;padding:.55rem .6rem;border:1px solid rgba(var(--cs-rgb),.5);border-radius:8px;background:#263c32;box-shadow:0 0 20px rgba(var(--cs-rgb),.04);transition:transform .7s,background .7s;transform:translateX(0)}
#work .cs-booking-event>svg{color:var(--cs-accent);width:21px;height:21px}#work .cs-booking-event>div{display:grid;gap:2px}#work .cs-booking-event strong{font-size:.68rem;color:#f0f5ed}#work .cs-booking-event span{font-size:.53rem;color:#c1d0c6}#work .cs-booking-event .cs-confirm{margin-left:auto;background:var(--cs-accent);color:#101b18;border-radius:50%;height:18px;width:18px;text-align:center;line-height:18px;opacity:0}
#work [data-stage="3"] .cs-booking-event{transform:translateX(14%);background:#344d32}#work [data-stage="3"] .cs-confirm{opacity:1}
#work .cs-floating{display:flex;align-items:center;gap:.4rem;position:absolute;z-index:2;padding:.5rem .65rem;background:#16252aea;border:1px solid rgba(var(--cs-rgb),.65);border-radius:9px;box-shadow:0 8px 20px #0005;font-size:.61rem;color:#ecf2ee;animation:cs-float 7s ease-in-out infinite reverse;pointer-events:none}
#work .cs-floating>svg{height:17px;width:17px;flex:none;color:var(--cs-accent)}#work .cs-floating>i{width:4px;height:4px;border-radius:50%;background:var(--cs-accent);margin-left:.2rem;box-shadow:0 0 8px rgba(var(--cs-rgb),.55)}#work .cs-float-top{top:18px;right:17px;transform:rotate(3deg)}#work .cs-float-bottom{bottom:8px;left:19px;animation-delay:-3s}
#work .cs-interaction{position:relative;padding:.6rem .85rem .75rem;border-top:1px solid #2a3b40;background:#0d191fe6;z-index:2}#work .cs-step-list{display:flex;gap:.25rem}#work .cs-step-list button{position:relative;flex:1;min-width:0;min-height:47px;display:flex;flex-direction:column;justify-content:center;gap:.13rem;align-items:center;padding:.4rem .2rem;background:transparent;border:1px solid #33484e;color:#9cafb5;border-radius:7px;font-size:.6rem;line-height:1.35;overflow:hidden;transition:background .25s,color .25s}
#work .cs-step-list button>span{font:500 .49rem/1.2 ui-monospace,monospace;color:#92a5ab}#work .cs-step-list button[aria-pressed="true"]{background:rgba(var(--cs-rgb),.08);border-color:rgba(var(--cs-rgb),.6);color:var(--cs-accent)}#work .cs-step-list button[aria-pressed="true"]>span{color:var(--cs-accent)}#work .cs-step-list button[aria-pressed="true"]::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--cs-accent);transform-origin:left;animation:cs-progress 3.6s linear infinite}
#work .cs-playback{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:.5rem;min-height:50px}#work .cs-step-description{color:#c1cfd3;font-size:.7rem;line-height:1.55;max-width:43ch;margin:0;min-width:0}#work .cs-toggle{display:flex;align-items:center;justify-content:center;gap:.35rem;min-height:44px;padding:.4rem .6rem;flex:none;color:var(--cs-accent);background:#18272d;border:1px solid #3a4d52;border-radius:7px;font-size:.65rem}#work .cs-toggle:disabled{opacity:.7}
#work .cs-disclaimer{font-size:.59rem;line-height:1.6;color:#8fa4ac;margin:0;padding:.5rem 1rem .7rem;background:#0d191f;border-top:1px solid #26373d}
#work .cs-footer{display:grid;gap:.9rem;align-content:start}#work .cs-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:0}#work .cs-tags li{border:1px solid #344348;border-radius:6px;padding:.3rem .5rem;color:#aebfc3;font-size:.67rem;line-height:1.5;list-style:none}
#work .cs-cta{color:var(--cs-accent);font-size:.9rem;justify-self:start;max-width:100%;text-decoration-color:rgba(var(--cs-rgb),.45)}#work .cs-cta span{transition:transform .2s}#work .cs-cta:hover span{transform:translate(2px,-2px)}
#work .cs-evidence{border:1px solid #344349;border-radius:10px;overflow:hidden;background:#111e24}#work .cs-evidence>summary{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:49px;cursor:pointer;padding:.7rem .9rem;font-size:.75rem;color:#d4dfe0;list-style:none}#work .cs-evidence>summary::-webkit-details-marker{display:none}#work .cs-evidence>summary>span{color:var(--cs-accent);font-size:1rem}#work .cs-evidence[open]>summary>span{transform:rotate(45deg)}
#work .cs-evidence .product-shot{padding:0 .6rem .6rem}#work .cs-evidence .product-shot>a{background:#25353c;border-color:#42565c;padding:5px;border-radius:6px}#work .cs-evidence .product-shot img{width:100%;height:auto;object-fit:contain;max-height:none}#work .cs-evidence .image-action{color:var(--cs-accent);font-size:.75rem;padding:.7rem}#work .cs-evidence figcaption{color:#9db0b5;font-size:.65rem;line-height:1.6;padding:.5rem .2rem 0}
#work .cs-model-badge{padding:.4rem .55rem;border:1px solid #4b6670;border-radius:7px;color:var(--cs-accent);font-size:.7rem}#work .cs-model-legend{display:flex;gap:1rem;font-size:.55rem;color:#b9c9ce;margin-top:.8rem}#work .cs-model-legend span{display:flex;align-items:center;gap:.3rem}#work .cs-model-legend i{width:12px;border-top:2px solid #779098}#work .cs-model-legend span+span i{border-color:var(--cs-accent)}
#work .cs-chart{width:100%;height:110px;overflow:visible;margin:.6rem 0}.cs-chart-grid{fill:none;stroke:#4f686f;stroke-width:.8;opacity:.5}.cs-chart-base{fill:none;stroke:#738d95;stroke-width:2;stroke-dasharray:6 5}.cs-chart-line{fill:none;stroke:var(--cs-accent);stroke-width:3;stroke-dasharray:1;stroke-dashoffset:.72;transition:stroke-dashoffset 1s;filter:drop-shadow(0 0 3px rgba(var(--cs-rgb),.3))}.cs-chart-node{fill:var(--cs-accent);opacity:0;transition:opacity 1s}
#work #netrivo[data-stage="1"] .cs-chart-line{stroke-dashoffset:.35}#work #netrivo[data-stage="2"] .cs-chart-line{stroke-dashoffset:0}#work #netrivo[data-stage="2"] .cs-chart-node{opacity:1}#work .cs-model-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}#work .cs-model-inputs>span{display:grid;gap:.35rem;color:#bdcbd0;font-size:.58rem}#work .cs-model-inputs i{height:4px;background:linear-gradient(90deg,var(--cs-accent) 50%,#3a4b52 50%);border-radius:2px}#work .cs-model-inputs>span:nth-child(2) i{background:linear-gradient(90deg,#738d95 30%,#3a4b52 30%)}#work .cs-model-inputs>span:nth-child(3) i{background:linear-gradient(90deg,var(--cs-accent) 70%,#3a4b52 70%)}
#work .cs-catalog{display:grid;grid-template-columns:32% minmax(0,1fr);gap:.8rem;margin-top:1rem}#work .cs-product-art{position:relative;min-height:140px;border-radius:8px;background:radial-gradient(ellipse at 50% 70%,#66533d,#2f302d 80%);overflow:hidden}#work .cs-lamp-shade{position:absolute;top:24%;left:14%;width:72%;height:34%;background:linear-gradient(90deg,#b2a081,#e0cfad 40%,#9c8e78);clip-path:polygon(25% 0,75% 0,100% 100%,0 100%);border-radius:4px}#work .cs-lamp-stem{position:absolute;top:56%;bottom:16%;left:48%;width:4%;background:#af976e}#work .cs-lamp-base{position:absolute;bottom:14%;left:28%;width:44%;height:4%;border-radius:50%;background:#c2a271}
#work .cs-catalog-copy{display:grid;align-content:start;gap:.3rem;padding-top:.2rem}#work .cs-catalog-copy>small{font-size:.47rem;letter-spacing:.06em;color:var(--cs-accent)}#work .cs-catalog-copy>strong{font-size:.85rem;color:#e3edee}#work .cs-catalog-copy>span{font-size:.53rem;color:#a7b8be}#work .cs-validation{display:grid;gap:.4rem;margin-top:.4rem}#work .cs-validation>span{display:flex;align-items:center;gap:.3rem;font-size:.54rem;color:#aabac0;opacity:.4;transition:opacity .6s}#work .cs-validation svg{width:12px;height:12px;color:var(--cs-accent)}#work [data-stage="0"] [data-cs-check="0"],#work [data-stage="1"] [data-cs-check="0"],#work [data-stage="1"] [data-cs-check="1"],#work [data-stage="2"] [data-cs-check]{opacity:1}
#work .cs-pipeline{display:flex;align-items:center;justify-content:space-between;gap:.3rem;font-size:.6rem;padding:.6rem .4rem 0;margin-top:.65rem;border-top:1px solid #405158;color:#c7d3d5}#work .cs-pipeline svg{width:15px;height:15px;color:var(--cs-accent)}
#work .cs-case .cs-anim,#work .cs-step-list button::after{animation-play-state:paused!important}#work .cs-case[data-running="true"] .cs-anim,#work .cs-case[data-running="true"] .cs-step-list button::after{animation-play-state:running!important}
#work .cs-case button:focus-visible,#work .cs-case a:focus-visible,#work .cs-evidence summary:focus-visible{outline:2px solid var(--cs-accent);outline-offset:3px}
#work .confidential-work,#work .more-projects{background:#101e23;color:#edf2ee;border-color:#35474c}#work .confidential-work h3,#work .more-projects h3{color:#eef3ef}#work .confidential-work em,#work .confidential-work a,#work .more-projects summary{color:#d8ff76}#work .confidential-work p,#work .more-projects p{color:#aabbbf}#work .project-grid article{background:#15252b;border-color:#3a4c52}
@keyframes cs-field{from{transform:translate3d(-6px,9px,0) scale(1.06)}to{transform:translate3d(6px,-5px,0) scale(1.09)}}@keyframes cs-signal{to{stroke-dashoffset:-660}}@keyframes cs-float{0%,100%{transform:translate3d(0,0,0) rotate(-2deg)}50%{transform:translate3d(0,-8px,0) rotate(.5deg)}}@keyframes cs-layer{to{transform:translate(15px,-20px) rotate(-3deg)}}@keyframes cs-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(min-width:600px){#work .cs-showcase-top{padding:1.25rem 1.4rem 0}#work .cs-stage{height:425px;padding:55px 50px 42px}#work .cs-app-body{padding:1.2rem 1.4rem}#work .cs-app-heading>strong{font-size:1.4rem}#work .cs-app-bar{padding:.7rem 1rem;font-size:.8rem}#work .cs-app-bar small{font-size:.6rem}#work .cs-resources{margin:1rem 0}#work .cs-resources>div{padding:.55rem .7rem}#work .cs-resources span{font-size:.8rem}#work .cs-resources small{font-size:.65rem}#work .cs-booking-event strong{font-size:.8rem}#work .cs-booking-event span{font-size:.65rem}#work .cs-floating{font-size:.72rem;padding:.6rem .8rem}#work .cs-float-top{right:28px;top:20px}#work .cs-float-bottom{left:34px;bottom:12px}#work .cs-layer{top:95px;height:275px}#work .cs-step-list button{font-size:.74rem;min-height:54px}#work .cs-step-list button>span{font-size:.55rem}#work .cs-step-description{font-size:.78rem}#work .cs-toggle{font-size:.75rem}#work .cs-disclaimer{font-size:.67rem;padding-inline:1.2rem}#work .cs-interaction{padding:.85rem 1.15rem}#work .cs-demo-label{max-width:none;font-size:.6rem}#work .cs-chart{height:135px}#work .cs-model-inputs>span{font-size:.68rem}#work .cs-catalog-copy>strong{font-size:1.1rem}#work .cs-catalog-copy>small,#work .cs-catalog-copy>span,#work .cs-validation>span{font-size:.65rem}#work .cs-product-art{min-height:160px}}
@media(min-width:1000px){#work .cs-case{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);column-gap:clamp(2rem,4vw,4rem);row-gap:1.5rem;padding-block:4rem}#work .cs-copy{grid-area:1/1;padding-top:1rem}#work .cs-showcase{grid-column:2;grid-row:1/3}#work .cs-footer{grid-area:2/1}#work .cs-stage{height:425px;padding-inline:34px}#work .cs-copy h3{font-size:clamp(3rem,4.6vw,4.1rem)}#work .cs-description{font-size:.95rem}#work .cs-tags li{font-size:.72rem}}
@media(max-width:359px){#work .cs-stage{height:360px;padding-inline:17px}#work .cs-step-list button{font-size:.55rem}#work .cs-app-heading>strong{font-size:1rem}#work .cs-resources small{font-size:.46rem}#work .cs-copy h3{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){#work .cs-case .cs-anim,#work .cs-step-list button::after{animation:none!important}#work .cs-case *,#work .cs-case *::before,#work .cs-case *::after{transition:none!important;scroll-behavior:auto!important}}
