.pf-page{--pf-bg:#050813;--pf-surface:#0c1224;--pf-surface-2:#111a31;--pf-line:rgba(133,157,214,.18);--pf-text:#f5f7ff;--pf-muted:#9ba8c5;--pf-cyan:#20d7f3;--pf-blue:#466cff;--pf-violet:#9b6cff;position:relative;overflow:hidden;color:var(--pf-text)}
.pf-page *{box-sizing:border-box}.pf-shell{width:min(1380px,calc(100% - 48px));margin-inline:auto}.pf-kicker{display:block;color:var(--pf-cyan);font-size:12px;font-weight:700;letter-spacing:.17em}.pf-page h1,.pf-page h2,.pf-page h3,.pf-page p{margin-top:0}.pf-page h1,.pf-page h2,.pf-page h3{color:var(--pf-text)}.pf-page p{color:var(--pf-muted);line-height:1.75}.pf-text-link{display:inline-flex;gap:9px;align-items:center;color:var(--pf-text);font-weight:700;text-decoration:none}.pf-text-link span{color:var(--pf-cyan);transition:transform .25s ease}.pf-text-link:hover span{transform:translate(3px,-3px)}
.pf-hero{position:relative;padding:150px 0 110px;background:radial-gradient(circle at 15% 20%,rgba(70,108,255,.2),transparent 35%),radial-gradient(circle at 88% 72%,rgba(155,108,255,.18),transparent 32%)}.pf-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,.9fr);gap:70px;align-items:center}.pf-hero-copy h1{max-width:790px;margin:20px 0 28px;font-size:clamp(54px,6vw,102px);line-height:.94;letter-spacing:-.065em}.pf-hero-copy h1 span{display:block;background:linear-gradient(100deg,var(--pf-cyan),#8ca8ff 48%,var(--pf-violet));-webkit-background-clip:text;background-clip:text;color:transparent}.pf-hero-copy>p{max-width:670px;font-size:19px}.pf-hero-actions{display:flex;align-items:center;gap:28px;margin-top:38px}.pf-proof-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:70px;padding-top:25px;border-top:1px solid var(--pf-line)}.pf-proof-row div{display:grid;gap:4px}.pf-proof-row strong{font-size:27px;color:var(--pf-text)}.pf-proof-row span{font-size:12px;color:var(--pf-muted);text-transform:uppercase;letter-spacing:.09em}
.pf-hero-stage{position:relative;min-height:600px}.pf-stage-orbit{position:absolute;border:1px solid rgba(32,215,243,.2);border-radius:50%}.pf-stage-orbit-one{width:520px;height:520px;right:0;top:34px;animation:pf-spin 24s linear infinite}.pf-stage-orbit-two{width:380px;height:380px;right:70px;top:104px;border-style:dashed;animation:pf-spin-reverse 18s linear infinite}.pf-stage-card{position:absolute;border:1px solid var(--pf-line);background:linear-gradient(145deg,rgba(17,26,49,.96),rgba(7,11,25,.94));box-shadow:0 35px 90px rgba(0,0,0,.38);backdrop-filter:blur(18px)}.pf-stage-card-main{width:470px;right:36px;top:95px;border-radius:28px;overflow:hidden;transform:rotate(2deg)}.pf-window-bar{height:48px;display:flex;align-items:center;gap:8px;padding:0 18px;border-bottom:1px solid var(--pf-line);font:11px/1 monospace;color:var(--pf-muted)}.pf-window-bar i{width:8px;height:8px;border-radius:50%;background:var(--pf-line)}.pf-window-bar i:first-child{background:var(--pf-cyan)}.pf-window-bar span{margin-left:auto}.pf-window-body{min-height:330px;padding:34px;background:linear-gradient(145deg,rgba(70,108,255,.12),transparent 52%)}.pf-window-copy span{font:10px/1 monospace;letter-spacing:.15em;color:var(--pf-cyan)}.pf-window-copy strong{display:block;margin-top:18px;font-size:39px;line-height:1.05}.pf-window-ui{margin-top:70px}.pf-ui-line{height:8px;width:54%;border-radius:99px;background:rgba(255,255,255,.16);margin:12px 0}.pf-ui-line.wide{width:82%;background:linear-gradient(90deg,var(--pf-cyan),var(--pf-violet))}.pf-ui-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.pf-ui-grid i{height:78px;border-radius:14px;background:rgba(255,255,255,.055);border:1px solid var(--pf-line)}.pf-float-card{position:absolute;width:205px;padding:17px;border-radius:18px;border:1px solid var(--pf-line);background:rgba(10,16,34,.94);box-shadow:0 20px 50px rgba(0,0,0,.3);animation:pf-float 5s ease-in-out infinite}.pf-float-card span{font:10px/1 monospace;color:var(--pf-cyan)}.pf-float-card strong,.pf-float-card small{display:block}.pf-float-card strong{margin:9px 0 5px}.pf-float-card small{color:var(--pf-muted);line-height:1.5}.pf-float-card-one{left:0;top:55px}.pf-float-card-two{left:2px;bottom:68px;animation-delay:-1.6s}.pf-float-card-three{right:-8px;bottom:20px;animation-delay:-3.2s}.pf-stage-cursor{position:absolute;right:25px;top:78px;width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--pf-blue),var(--pf-cyan));color:#020814;font-size:25px;font-weight:900;box-shadow:0 16px 35px rgba(32,215,243,.24)}
.pf-marquee{overflow:hidden;border-block:1px solid var(--pf-line);background:rgba(9,14,31,.75)}.pf-marquee-track{display:flex;width:max-content;align-items:center;gap:24px;padding:18px 0;animation:pf-marquee 30s linear infinite}.pf-marquee span{font-weight:800;font-size:15px;letter-spacing:.08em;text-transform:uppercase}.pf-marquee i{font-style:normal;color:var(--pf-cyan)}
.pf-intro,.pf-work,.pf-case-method,.pf-showcase,.pf-trust,.pf-faq,.pf-final{padding:120px 0}.pf-split-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.pf-split-heading h2,.pf-work-head h2,.pf-method-copy h2,.pf-showcase-head h2,.pf-trust h2,.pf-faq-title h2,.pf-final-card h2{font-size:clamp(42px,5vw,76px);line-height:1;letter-spacing:-.055em;margin:18px 0}.pf-intro-copy>p{font-size:19px;max-width:740px}.pf-value-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:42px}.pf-value-grid article{padding:25px;border:1px solid var(--pf-line);border-radius:20px;background:rgba(12,18,36,.58)}.pf-value-grid span{font:11px/1 monospace;color:var(--pf-cyan)}.pf-value-grid strong{display:block;margin:14px 0 8px;font-size:18px}.pf-value-grid p{margin:0;font-size:14px}
.pf-work{background:linear-gradient(180deg,rgba(13,20,42,.55),transparent)}.pf-work-head{display:flex;justify-content:space-between;gap:50px;align-items:end}.pf-work-head p{max-width:480px;font-size:17px}.pf-filter-wrap{margin:45px 0 35px}.pf-filters{display:flex;gap:10px;flex-wrap:wrap}.pf-filter{appearance:none;border:1px solid var(--pf-line);border-radius:999px;padding:12px 17px;background:rgba(12,18,36,.65);color:var(--pf-muted);font:600 12px/1.2 monospace;cursor:pointer;transition:.25s ease}.pf-filter:hover,.pf-filter.is-active{color:#041019;border-color:var(--pf-cyan);background:var(--pf-cyan);box-shadow:0 0 0 3px rgba(32,215,243,.09)}.pf-filter-status{margin:14px 0 0;color:var(--pf-muted);font-size:11px}.pf-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.pf-project-card{position:relative;overflow:hidden;border:1px solid var(--pf-line);border-radius:28px;background:linear-gradient(145deg,rgba(17,26,49,.85),rgba(7,11,24,.95));opacity:1!important;visibility:visible!important;transform:none!important;transition:border-color .3s ease,box-shadow .3s ease}.pf-project-card:hover{border-color:rgba(32,215,243,.42);box-shadow:0 30px 70px rgba(0,0,0,.24)}.pf-project-card[hidden]{display:none!important}.pf-project-media{position:relative;min-height:380px;overflow:hidden;background:linear-gradient(135deg,#101833,#1a2857)}.pf-project-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.pf-project-card:hover .pf-project-media img{transform:scale(1.04)}.pf-media-placeholder{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 70% 20%,rgba(32,215,243,.2),transparent 35%),linear-gradient(135deg,#111936,#090e20)}.pf-media-placeholder span{position:absolute;right:25px;top:25px;font:12px/1 monospace;color:var(--pf-cyan)}.pf-media-placeholder b{font-size:clamp(35px,4vw,60px);max-width:70%;text-align:center;color:rgba(255,255,255,.12);text-transform:uppercase}.pf-project-media img+.pf-media-placeholder{display:none}.pf-project-badge{position:absolute;left:20px;top:20px;padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(5,8,19,.68);backdrop-filter:blur(12px);font-size:10px;color:#fff}.pf-project-open{position:absolute;right:20px;bottom:20px;display:flex;align-items:center;gap:16px;border:0;border-radius:999px;padding:9px 10px 9px 17px;background:#f4f7ff;color:#091024;font-weight:800;cursor:pointer;text-decoration:none}.pf-project-open i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--pf-blue),var(--pf-cyan));font-style:normal}.pf-project-body{padding:28px}.pf-project-meta{display:flex;justify-content:space-between;color:var(--pf-cyan);font:10px/1 monospace;text-transform:uppercase;letter-spacing:.08em}.pf-project-body h3{margin:17px 0 12px;font-size:30px;letter-spacing:-.03em}.pf-project-body>p{min-height:75px}.pf-tech-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:21px}.pf-tech-list span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.045);border:1px solid var(--pf-line);color:var(--pf-muted);font-size:11px}.pf-project-details{padding:0 28px 30px;border-top:1px solid var(--pf-line)}.pf-case-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:28px}.pf-case-columns span{font-size:10px;color:var(--pf-cyan)}.pf-case-columns p{font-size:13px;margin:10px 0 0}.pf-case-link{display:inline-flex;margin-top:22px;color:var(--pf-text);font-weight:700;text-decoration:none}.pf-case-link span{margin-left:8px;color:var(--pf-cyan)}.pf-concept-media{display:grid;place-items:center}.pf-concept-scene{position:relative;width:74%;height:72%;border:1px solid rgba(255,255,255,.16);border-radius:26px;background:rgba(5,8,20,.42);box-shadow:0 30px 60px rgba(0,0,0,.3)}.pf-concept-scene i{position:absolute;border:1px solid rgba(255,255,255,.16);background:linear-gradient(135deg,rgba(32,215,243,.2),rgba(155,108,255,.16))}.pf-concept-scene i:nth-child(1){left:8%;top:12%;width:60%;height:18%;border-radius:12px}.pf-concept-scene i:nth-child(2){left:8%;top:38%;width:38%;height:47%;border-radius:16px}.pf-concept-scene i:nth-child(3){right:8%;top:38%;width:38%;height:47%;border-radius:16px}.pf-concept-scene span{position:absolute;right:16px;top:14px;font:11px/1 monospace;color:var(--pf-cyan)}.concept-2{background:radial-gradient(circle at 70% 25%,rgba(155,108,255,.4),transparent 35%),#111737}.concept-3{background:radial-gradient(circle at 20% 70%,rgba(32,215,243,.28),transparent 35%),#081b29}.concept-4{background:radial-gradient(circle at 80% 20%,rgba(255,135,84,.24),transparent 40%),#171129}.concept-5{background:radial-gradient(circle at 40% 20%,rgba(32,215,243,.3),transparent 35%),#0c1326}.concept-6{background:radial-gradient(circle at 70% 70%,rgba(241,75,255,.22),transparent 38%),#1b0f29}.concept-7{background:radial-gradient(circle at 20% 20%,rgba(80,255,151,.2),transparent 40%),#081a19}.concept-8{background:radial-gradient(circle at 80% 30%,rgba(70,108,255,.32),transparent 40%),#10142a}.pf-empty-filter{text-align:center;padding:70px 20px;border:1px dashed var(--pf-line);border-radius:24px}.pf-empty-filter strong{display:block;font-size:24px}.pf-empty-filter p{max-width:600px;margin:12px auto 22px}
.pf-method-panel{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:70px;padding:65px;border:1px solid var(--pf-line);border-radius:36px;background:radial-gradient(circle at 80% 50%,rgba(70,108,255,.2),transparent 38%),linear-gradient(145deg,rgba(17,26,49,.92),rgba(7,11,24,.96))}.pf-method-copy p{max-width:540px;font-size:18px}.pf-method-map{position:relative;min-height:570px}.pf-method-map svg{position:absolute;inset:50% auto auto 50%;width:500px;height:500px;transform:translate(-50%,-50%);overflow:visible}.pf-method-map circle{fill:none;stroke:rgba(90,130,230,.27);stroke-width:1}.pf-method-map circle:last-child{stroke-dasharray:5 11;animation:pf-spin-svg 28s linear infinite;transform-origin:center}.pf-method-center,.pf-method-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;text-align:center;border-radius:50%;border:1px solid var(--pf-line);background:#10182d;box-shadow:0 25px 60px rgba(0,0,0,.35)}.pf-method-center{width:170px;height:170px;background:radial-gradient(circle at 35% 25%,#29d8f1,#31529d 60%,#0a1022);color:#fff;font-weight:900;line-height:1.05}.pf-method-node{width:128px;height:128px}.pf-method-node b,.pf-method-node small{display:block}.pf-method-node small{margin-top:5px;color:var(--pf-muted)}.node-one{left:50%;top:5%}.node-two{left:91%;top:50%}.node-three{left:50%;top:95%}.node-four{left:9%;top:50%}
.pf-showcase{background:linear-gradient(180deg,transparent,rgba(16,24,52,.42),transparent)}.pf-showcase-head{max-width:800px}.pf-showcase-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:20px;margin-top:45px}.pf-showcase-card{position:relative;min-height:320px;padding:34px;border:1px solid var(--pf-line);border-radius:28px;background:linear-gradient(145deg,rgba(17,26,49,.78),rgba(7,11,24,.96));overflow:hidden}.pf-showcase-card.large{grid-row:span 2;min-height:660px}.pf-showcase-card.wide{grid-column:1/-1;min-height:300px}.pf-showcase-card>span{font-size:10px;color:var(--pf-cyan)}.pf-showcase-card h3{max-width:600px;margin:22px 0 12px;font-size:clamp(28px,3vw,48px);line-height:1.05}.pf-showcase-card p{max-width:560px}.pf-mini-interface{position:absolute;left:9%;right:9%;bottom:-40px;height:330px;border:1px solid var(--pf-line);border-radius:28px 28px 0 0;background:linear-gradient(155deg,#131d3c,#080d1e);transform:perspective(900px) rotateX(10deg)}.pf-mini-interface:before{content:"";position:absolute;left:25px;right:25px;top:25px;height:50px;border-radius:14px;background:rgba(255,255,255,.06)}.pf-mini-interface i{position:absolute;top:105px;bottom:28px;width:26%;border-radius:17px;background:linear-gradient(160deg,rgba(32,215,243,.2),rgba(70,108,255,.08));border:1px solid var(--pf-line)}.pf-mini-interface i:nth-child(1){left:6%}.pf-mini-interface i:nth-child(2){left:37%}.pf-mini-interface i:nth-child(3){right:6%}.pf-chart{position:absolute;left:35px;right:35px;bottom:30px;height:120px;display:flex;align-items:end;gap:12px}.pf-chart i{flex:1;border-radius:9px 9px 2px 2px;background:linear-gradient(var(--pf-cyan),var(--pf-blue));opacity:.75}.pf-chart i:nth-child(1){height:38%}.pf-chart i:nth-child(2){height:65%}.pf-chart i:nth-child(3){height:48%}.pf-chart i:nth-child(4){height:88%}.pf-chart i:nth-child(5){height:72%}.pf-search-chip{position:absolute;right:32px;bottom:32px;padding:14px 18px;border-radius:999px;background:var(--pf-cyan);color:#041019;font-weight:900}.pf-color-system{position:absolute;right:40px;bottom:35px;display:flex}.pf-color-system i{width:85px;height:85px;border-radius:50%;margin-left:-20px;border:4px solid #0b1021}.pf-color-system i:nth-child(1){background:#22d7f2}.pf-color-system i:nth-child(2){background:#466cff}.pf-color-system i:nth-child(3){background:#9b6cff}.pf-color-system i:nth-child(4){background:#ff7c72}.pf-color-system i:nth-child(5){background:#f7d85d}
.pf-trust-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.pf-trust-grid>div:first-child{position:sticky;top:130px;align-self:start}.pf-trust-grid>div:first-child p{max-width:520px;font-size:18px}.pf-trust-list{border-top:1px solid var(--pf-line)}.pf-trust-list article{display:grid;grid-template-columns:70px 1fr;gap:25px;padding:28px 0;border-bottom:1px solid var(--pf-line)}.pf-trust-list article>span{font:11px/1 monospace;color:var(--pf-cyan)}.pf-trust-list strong{font-size:23px}.pf-trust-list p{margin:8px 0 0}.pf-faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.pf-faq-title{position:sticky;top:130px;align-self:start}.pf-faq-list details{border-bottom:1px solid var(--pf-line)}.pf-faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:25px 0;color:var(--pf-text);font-size:18px;font-weight:800;cursor:pointer;list-style:none}.pf-faq-list summary::-webkit-details-marker{display:none}.pf-faq-list summary span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid var(--pf-line);border-radius:50%;color:var(--pf-cyan);transition:transform .25s ease}.pf-faq-list details[open] summary span{transform:rotate(45deg)}.pf-faq-list details p{padding:0 55px 24px 0}.pf-final{padding-top:60px}.pf-final-card{display:flex;justify-content:space-between;align-items:end;gap:60px;padding:65px;border:1px solid rgba(32,215,243,.3);border-radius:36px;background:radial-gradient(circle at 80% 20%,rgba(32,215,243,.16),transparent 35%),radial-gradient(circle at 15% 90%,rgba(155,108,255,.18),transparent 35%),#0b1123}.pf-final-card>div:first-child{max-width:850px}.pf-final-card p{max-width:650px}.pf-final-actions{display:grid;gap:20px;justify-items:start;flex:0 0 auto}
html[data-theme="light"] .pf-page,.light-theme .pf-page{--pf-bg:#f6f8ff;--pf-surface:#fff;--pf-surface-2:#eef3ff;--pf-line:rgba(42,64,112,.16);--pf-text:#11182b;--pf-muted:#596784;background:#f6f8ff}.light-theme .pf-hero,html[data-theme="light"] .pf-hero{background:radial-gradient(circle at 15% 20%,rgba(70,108,255,.12),transparent 35%),radial-gradient(circle at 88% 72%,rgba(155,108,255,.12),transparent 32%)}.light-theme .pf-stage-card,.light-theme .pf-float-card,.light-theme .pf-project-card,.light-theme .pf-showcase-card,.light-theme .pf-value-grid article,html[data-theme="light"] .pf-stage-card,html[data-theme="light"] .pf-float-card,html[data-theme="light"] .pf-project-card,html[data-theme="light"] .pf-showcase-card,html[data-theme="light"] .pf-value-grid article{background:rgba(255,255,255,.9);box-shadow:0 25px 60px rgba(50,69,110,.12)}.light-theme .pf-window-body,html[data-theme="light"] .pf-window-body{background:linear-gradient(145deg,rgba(70,108,255,.08),transparent)}.light-theme .pf-project-badge,html[data-theme="light"] .pf-project-badge{background:rgba(255,255,255,.8);color:#11182b}.light-theme .pf-project-open,html[data-theme="light"] .pf-project-open{background:#11182b;color:#fff}.light-theme .pf-method-panel,.light-theme .pf-final-card,html[data-theme="light"] .pf-method-panel,html[data-theme="light"] .pf-final-card{background:radial-gradient(circle at 80% 50%,rgba(70,108,255,.12),transparent 38%),#fff}.light-theme .pf-method-node,html[data-theme="light"] .pf-method-node{background:#fff}.light-theme .pf-color-system i,html[data-theme="light"] .pf-color-system i{border-color:#fff}
@keyframes pf-spin{to{transform:rotate(360deg)}}@keyframes pf-spin-reverse{to{transform:rotate(-360deg)}}@keyframes pf-spin-svg{to{transform:rotate(360deg)}}@keyframes pf-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pf-marquee{to{transform:translateX(-50%)}}@keyframes pf-card-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.pf-project-card.is-filtering{animation:pf-card-in .32s ease both}
@media(max-width:1100px){.pf-hero-grid{grid-template-columns:1fr}.pf-hero-stage{max-width:720px;width:100%;margin:auto}.pf-split-heading,.pf-trust-grid,.pf-faq-grid{grid-template-columns:1fr;gap:50px}.pf-trust-grid>div:first-child,.pf-faq-title{position:static}.pf-method-panel{grid-template-columns:1fr}.pf-method-map{max-width:650px;width:100%;margin:auto}.pf-showcase-grid{grid-template-columns:1fr}.pf-showcase-card.large{grid-row:auto;min-height:600px}.pf-showcase-card.wide{grid-column:auto}.pf-final-card{align-items:start;flex-direction:column}}
@media(max-width:760px){.pf-shell{width:min(100% - 28px,1380px)}.pf-hero{padding:120px 0 75px}.pf-hero-copy h1{font-size:clamp(50px,16vw,74px)}.pf-hero-copy>p{font-size:16px}.pf-hero-actions{align-items:flex-start;flex-direction:column}.pf-proof-row{grid-template-columns:1fr;gap:14px;margin-top:45px}.pf-hero-stage{min-height:520px;transform:scale(.86);transform-origin:top center;margin-bottom:-70px}.pf-stage-card-main{width:88%;right:6%}.pf-float-card{width:180px}.pf-float-card-one{left:-4%}.pf-float-card-two{left:-3%}.pf-float-card-three{right:-5%}.pf-intro,.pf-work,.pf-case-method,.pf-showcase,.pf-trust,.pf-faq,.pf-final{padding:80px 0}.pf-value-grid,.pf-project-grid{grid-template-columns:1fr}.pf-work-head{align-items:flex-start;flex-direction:column}.pf-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.pf-filter{white-space:nowrap}.pf-project-media{min-height:290px}.pf-case-columns{grid-template-columns:1fr}.pf-method-panel,.pf-final-card{padding:30px 22px}.pf-method-map{min-height:440px;transform:scale(.78);margin-block:-45px}.pf-method-map svg{width:430px;height:430px}.pf-showcase-card,.pf-showcase-card.large,.pf-showcase-card.wide{min-height:420px;padding:26px}.pf-mini-interface{height:240px}.pf-color-system{right:18px}.pf-color-system i{width:55px;height:55px}.pf-trust-list article{grid-template-columns:45px 1fr}.pf-final-card h2{font-size:44px}.pf-marquee-track{animation-duration:20s}}
@media(prefers-reduced-motion:reduce){.pf-stage-orbit,.pf-float-card,.pf-method-map circle:last-child,.pf-marquee-track{animation:none!important}.pf-page *{scroll-behavior:auto!important}}


/* =========================================================
   Portfolio media upgrade — image or video
   ========================================================= */
.pf-project-media{
    isolation:isolate;
}

.pf-project-media.has-video{
    background:#050914;
    cursor:default;
}

.pf-project-video{
    position:absolute;
    inset:0;
    z-index:1;
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transform:scale(1.015);
    filter:saturate(.92) contrast(1.04);
    transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .45s ease,opacity .35s ease;
}

.pf-project-media.has-video:hover .pf-project-video,
.pf-project-media.has-video.is-playing .pf-project-video{
    transform:scale(1.055);
    filter:saturate(1.08) contrast(1.02);
}

.pf-video-shade{
    position:absolute;
    inset:0;
    z-index:2;
    pointer-events:none;
    background:
        linear-gradient(180deg,rgba(3,7,18,.08) 15%,rgba(3,7,18,.22) 48%,rgba(3,7,18,.88) 100%),
        linear-gradient(90deg,rgba(15,23,42,.34),transparent 48%);
    transition:opacity .35s ease;
}

.pf-project-media.is-playing .pf-video-shade{opacity:.74}

.pf-video-status{
    position:absolute;
    top:18px;
    right:18px;
    z-index:5;
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:29px;
    padding:0 11px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(5,9,20,.52);
    color:rgba(255,255,255,.82);
    font-size:8px;
    letter-spacing:.13em;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}

.pf-video-status span{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#34d399;
    box-shadow:0 0 11px #34d399;
    animation:pfVideoPulse 1.8s ease-in-out infinite;
}

.pf-video-controls{
    position:absolute;
    left:18px;
    bottom:18px;
    z-index:7;
    display:flex;
    align-items:center;
    gap:8px;
}

.pf-video-controls button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:40px;
    padding:0 14px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(4,8,18,.62);
    color:#fff;
    font:600 11px/1 'Space Grotesk',sans-serif;
    cursor:pointer;
    backdrop-filter:blur(14px) saturate(130%);
    -webkit-backdrop-filter:blur(14px) saturate(130%);
    transition:transform .22s ease,border-color .22s ease,background .22s ease;
}

.pf-video-controls button:hover,
.pf-video-controls button:focus-visible{
    transform:translateY(-2px);
    border-color:rgba(34,211,238,.58);
    background:rgba(5,12,28,.82);
    outline:none;
}

.pf-video-play-icon{
    display:grid;
    place-items:center;
    width:19px;
    height:19px;
    border-radius:50%;
    background:linear-gradient(135deg,#3d5afe,#22d3ee);
    color:#03101a;
    font-size:8px;
    box-shadow:0 0 18px rgba(34,211,238,.28);
}

.pf-video-sound{padding-inline:12px!important;color:rgba(255,255,255,.78)!important}

.pf-video-progress{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:8;
    height:3px;
    overflow:hidden;
    background:rgba(255,255,255,.12);
}

.pf-video-progress i{
    display:block;
    width:100%;
    height:100%;
    transform:scaleX(0);
    transform-origin:left center;
    background:linear-gradient(90deg,#22d3ee,#3d5afe,#8b5cf6);
    box-shadow:0 0 12px rgba(34,211,238,.7);
    will-change:transform;
}

.pf-project-media.has-video .pf-project-badge{
    z-index:6;
    background:rgba(5,9,20,.56);
    border-color:rgba(255,255,255,.17);
    color:#fff;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}

.pf-project-media.has-video .pf-project-open{
    z-index:7;
    bottom:18px;
    right:18px;
}

.pf-project-media.has-video .pf-media-placeholder{z-index:0}

html[data-theme="light"] .pf-project-media.has-video{
    background:#dce8f7;
    box-shadow:inset 0 0 0 1px rgba(15,23,42,.08);
}

html[data-theme="light"] .pf-video-shade{
    background:
        linear-gradient(180deg,rgba(3,7,18,.02) 10%,rgba(3,7,18,.15) 52%,rgba(3,7,18,.78) 100%),
        linear-gradient(90deg,rgba(15,23,42,.18),transparent 55%);
}

html[data-theme="light"] .pf-video-controls button,
html[data-theme="light"] .pf-video-status{
    background:rgba(7,12,24,.70);
    border-color:rgba(255,255,255,.24);
    color:#fff;
}

@keyframes pfVideoPulse{
    50%{opacity:.35;transform:scale(.78)}
}

@media (max-width:820px){
    .pf-video-status{top:13px;right:13px}
    .pf-video-controls{left:13px;bottom:13px}
    .pf-project-media.has-video .pf-project-open{right:13px;bottom:13px}
    .pf-video-controls button{min-height:38px;padding-inline:12px}
    .pf-video-sound{display:none!important}
}

@media (max-width:520px){
    .pf-video-play-label{display:none}
    .pf-video-play{width:42px;padding:0!important}
    .pf-video-play-icon{width:22px;height:22px}
    .pf-video-status{font-size:7px;letter-spacing:.1em}
}

@media (prefers-reduced-motion:reduce){
    .pf-project-video,
    .pf-video-controls button,
    .pf-video-status span{transition:none!important;animation:none!important}
}

/* =========================================================
   Portfolio light-theme completion
   Fixes sections that still inherited dark-only surfaces.
   ========================================================= */
html[data-theme="light"] .pf-page,
.light-theme .pf-page{
    background:
        radial-gradient(circle at 8% 12%,rgba(32,215,243,.08),transparent 25%),
        radial-gradient(circle at 92% 38%,rgba(155,108,255,.08),transparent 30%),
        #f6f8ff;
}

html[data-theme="light"] .pf-marquee,
.light-theme .pf-marquee{
    background:rgba(255,255,255,.72);
    border-color:rgba(42,64,112,.13);
}

html[data-theme="light"] .pf-work,
.light-theme .pf-work{
    background:
        radial-gradient(circle at 12% 18%,rgba(32,215,243,.09),transparent 28%),
        radial-gradient(circle at 88% 82%,rgba(155,108,255,.08),transparent 30%),
        linear-gradient(180deg,#f8faff 0%,#f2f6ff 52%,#f8faff 100%);
}

html[data-theme="light"] .pf-showcase,
.light-theme .pf-showcase{
    background:linear-gradient(180deg,transparent,rgba(222,230,250,.72),transparent);
}

html[data-theme="light"] .pf-filter,
.light-theme .pf-filter{
    background:rgba(255,255,255,.9);
    color:#52617e;
    border-color:rgba(42,64,112,.16);
    box-shadow:0 8px 24px rgba(51,72,115,.06);
}

html[data-theme="light"] .pf-filter:hover,
html[data-theme="light"] .pf-filter.is-active,
.light-theme .pf-filter:hover,
.light-theme .pf-filter.is-active{
    color:#03111c;
    background:var(--pf-cyan);
    border-color:var(--pf-cyan);
    box-shadow:0 8px 26px rgba(32,215,243,.2);
}

html[data-theme="light"] .pf-project-card,
.light-theme .pf-project-card{
    background:rgba(255,255,255,.96);
    border-color:rgba(42,64,112,.14);
    box-shadow:0 22px 55px rgba(52,70,108,.1);
}

html[data-theme="light"] .pf-project-card:hover,
.light-theme .pf-project-card:hover{
    border-color:rgba(32,170,205,.42);
    box-shadow:0 28px 70px rgba(52,70,108,.16);
}

html[data-theme="light"] .pf-project-body,
html[data-theme="light"] .pf-project-details,
.light-theme .pf-project-body,
.light-theme .pf-project-details{
    background:#fff;
}

html[data-theme="light"] .pf-tech-list span,
.light-theme .pf-tech-list span{
    background:#f1f5fc;
    color:#53617c;
}

html[data-theme="light"] .pf-value-grid article,
html[data-theme="light"] .pf-showcase-card,
html[data-theme="light"] .pf-method-panel,
html[data-theme="light"] .pf-final-card,
.light-theme .pf-value-grid article,
.light-theme .pf-showcase-card,
.light-theme .pf-method-panel,
.light-theme .pf-final-card{
    border-color:rgba(42,64,112,.14);
    box-shadow:0 24px 62px rgba(52,70,108,.1);
}

html[data-theme="light"] .pf-stage-card,
html[data-theme="light"] .pf-float-card,
.light-theme .pf-stage-card,
.light-theme .pf-float-card{
    border-color:rgba(42,64,112,.15);
    background:rgba(255,255,255,.94);
    box-shadow:0 24px 60px rgba(52,70,108,.12);
}

html[data-theme="light"] .pf-ui-line,
.light-theme .pf-ui-line{
    background:rgba(42,64,112,.12);
}

html[data-theme="light"] .pf-ui-grid i,
.light-theme .pf-ui-grid i{
    background:rgba(70,108,255,.06);
}

html[data-theme="light"] .pf-method-center,
.light-theme .pf-method-center{
    color:#fff;
}

html[data-theme="light"] .pf-mini-interface,
.light-theme .pf-mini-interface{
    background:linear-gradient(155deg,#eef3ff,#dfe8fb);
    box-shadow:0 26px 60px rgba(52,70,108,.12);
}

html[data-theme="light"] .pf-mini-interface:before,
.light-theme .pf-mini-interface:before{
    background:rgba(42,64,112,.1);
}

html[data-theme="light"] .pf-concept-scene,
.light-theme .pf-concept-scene{
    background:rgba(255,255,255,.66);
    border-color:rgba(42,64,112,.16);
    box-shadow:0 22px 54px rgba(52,70,108,.12);
}

html[data-theme="light"] .pf-media-placeholder,
.light-theme .pf-media-placeholder{
    background:
        radial-gradient(circle at 70% 20%,rgba(32,215,243,.17),transparent 35%),
        linear-gradient(135deg,#eaf0ff,#dfe8fb);
}

html[data-theme="light"] .pf-media-placeholder b,
.light-theme .pf-media-placeholder b{
    color:rgba(17,24,43,.14);
}

html[data-theme="light"] .pf-faq-list summary,
.light-theme .pf-faq-list summary{
    color:#11182b;
}

html[data-theme="light"] .pf-project-meta,
html[data-theme="light"] .pf-case-columns span,
html[data-theme="light"] .pf-kicker,
.light-theme .pf-project-meta,
.light-theme .pf-case-columns span,
.light-theme .pf-kicker{
    color:#079fbd;
}

@media (max-width:760px){
    html[data-theme="light"] .pf-work,
    .light-theme .pf-work{
        background:linear-gradient(180deg,#f8faff,#f2f6ff 58%,#f8faff);
    }
}
