@keyframes screenSwap{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:none}}
/* ---- Calculator ---- */
.calc-wrap{background:rgba(13,21,41,.9);border:1px solid rgba(0,238,255,.15);border-radius:var(--radius-lg);padding:2.5rem;max-width:780px;margin:0 auto;}
.calc-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;}
.calc-label{font-family:'Syne',sans-serif;font-size:.75rem;font-weight:700;color:var(--white);margin-bottom:.6rem;display:flex;justify-content:space-between;align-items:center;}
.calc-val{color:var(--cyan);}
input[type=range]{width:100%;appearance:none;-webkit-appearance:none;height:4px;border-radius:2px;background:rgba(0,238,255,.2);outline:none;cursor:pointer;}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px var(--cyan-glow);cursor:pointer;}
.calc-types{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.5rem;}
.calc-type{font-size:.72rem;font-family:'Syne',sans-serif;font-weight:700;padding:.3rem .75rem;border-radius:20px;border:1.5px solid rgba(255,255,255,.1);background:transparent;color:#94A3B8;cursor:pointer;transition:all .25s;}
.calc-type.sel{background:rgba(0,238,255,.12);border-color:rgba(0,238,255,.4);color:var(--cyan);}
.calc-result{background:linear-gradient(135deg,rgba(0,238,255,.08),rgba(0,119,255,.06));border:1px solid rgba(0,238,255,.2);border-radius:var(--radius);padding:1.5rem 2rem;display:flex;align-items:center;justify-content:space-between;margin-top:1.5rem;flex-wrap:wrap;gap:1rem;}
/* ---- Availability ---- */
.avail-strip{display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:1rem 2rem;background:rgba(16,185,129,.06);border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-lg);margin-bottom:2rem;flex-wrap:wrap;}
/* ---- Callback widget ---- */
#callback-btn{position:fixed;bottom:6rem;right:1.75rem;z-index:399;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#10B981,#0077aa);border:none;cursor:pointer;box-shadow:0 4px 20px rgba(16,185,129,.5);display:flex;align-items:center;justify-content:center;transition:transform .3s;}
#callback-btn:hover{transform:scale(1.12);}
#callback-panel{position:fixed;bottom:10.5rem;right:1.75rem;z-index:399;width:260px;background:rgba(13,21,41,.98);border:1px solid rgba(16,185,129,.25);border-radius:16px;padding:1.25rem;box-shadow:0 16px 48px rgba(0,0,0,.5);display:none;}
#callback-panel.open{display:block;animation:chatIn .3s cubic-bezier(0.23,1,0.32,1);}
/* ---- Client panel promo ---- */
.panel-promo{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;}
.panel-screen{border-radius:var(--radius-lg);background:rgba(13,21,41,.95);border:1px solid rgba(0,238,255,.18);overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.ps-topbar{padding:.55rem 1rem;background:rgba(255,255,255,.03);border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;gap:.4rem;}
.ps-dot{width:8px;height:8px;border-radius:50%;}
.ps-tab{font-family:'Syne',sans-serif;font-size:.62rem;font-weight:700;padding:.35rem .8rem;border-radius:6px;cursor:pointer;transition:all .2s;}
.ps-tab.act{background:rgba(0,238,255,.15);color:var(--cyan);}
.ps-tab:not(.act){color:#8BA0B4;}
.prog-step{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:8px;margin-bottom:.3rem;}
.prog-step.done{background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.2);}
.prog-step.active{background:rgba(0,238,255,.08);border:1px solid rgba(0,238,255,.2);}
.prog-step.wait{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);}
.prog-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.75rem;flex-shrink:0;}




.faq-item.index-faq{border-bottom:1px solid rgba(0,238,255,.08);}
.faq-item.index-faq .faq-trigger{display:flex;justify-content:space-between;align-items:center;padding:1.1rem 0;cursor:pointer;}
.faq-item.index-faq .faq-trigger h4{font-size:.93rem;color:var(--white);font-family:'Syne',sans-serif;font-weight:600;margin:0;transition:color .2s;}
.faq-item.index-faq:hover .faq-trigger h4{color:var(--cyan);}
.faq-icon-idx{color:var(--cyan);font-size:1.3rem;transition:transform .35s;flex-shrink:0;line-height:1;}
.faq-item.index-faq.open .faq-icon-idx{transform:rotate(45deg);}
.faq-answer-idx{display:grid;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows .38s cubic-bezier(0.23,1,0.32,1),opacity .3s;opacity:0;}
.faq-answer-idx>*{min-height:0;}
.faq-item.index-faq.open .faq-answer-idx{grid-template-rows:1fr;opacity:1;}
.faq-body{padding-bottom:1.1rem;font-size:.88rem;color:#94A3B8;line-height:1.75;}
/* ---- Live Chat ---- */
#livechat-btn{position:fixed;bottom:1.75rem;right:1.75rem;z-index:400;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),#0077ff);border:none;cursor:pointer;box-shadow:0 4px 24px var(--cyan-glow);display:flex;align-items:center;justify-content:center;transition:transform .3s,box-shadow .3s;}
#livechat-btn.pulse-ready{animation:chatPulse 3s infinite;}
#livechat-btn:hover{transform:scale(1.1);box-shadow:0 6px 32px var(--cyan-glow);}
@keyframes chatPulse{0%,100%{box-shadow:0 4px 24px var(--cyan-glow),0 0 0 0 rgba(0,238,255,.4)}50%{box-shadow:0 4px 24px var(--cyan-glow),0 0 0 10px rgba(0,238,255,0)}}
#chat-bubble{position:fixed;bottom:5.25rem;right:1.75rem;z-index:401;background:rgba(13,21,41,.97);border:1px solid rgba(0,238,255,.25);border-radius:16px 16px 4px 16px;padding:.6rem .9rem;font-size:.75rem;font-family:'Syne',sans-serif;font-weight:700;color:var(--white);box-shadow:0 8px 32px rgba(0,0,0,.4);white-space:nowrap;opacity:0;transform:translateY(8px) scale(.95);transition:all .3s;pointer-events:none;}
#chat-bubble.show{opacity:1;transform:none;}
#livechat-panel{position:fixed;bottom:5.5rem;right:1.75rem;z-index:402;width:300px;background:rgba(13,21,41,.98);border:1px solid rgba(0,238,255,.2);border-radius:20px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.6);display:none;}
#livechat-panel.open{display:block;animation:chatIn .35s cubic-bezier(0.23,1,0.32,1);}
@keyframes chatIn{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
.chat-header{background:linear-gradient(135deg,rgba(0,238,255,.12),rgba(0,119,255,.08));padding:1rem 1.25rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid rgba(0,238,255,.1);}
.chat-messages{padding:.85rem;height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;}
.chat-msg{max-width:88%;padding:.5rem .75rem;border-radius:12px;font-size:.78rem;line-height:1.55;}
.chat-msg.bot{background:rgba(0,238,255,.1);border:1px solid rgba(0,238,255,.15);color:var(--text);border-radius:12px 12px 12px 4px;align-self:flex-start;}
.chat-msg.user{background:linear-gradient(135deg,var(--cyan),#0077ff);color:#000;font-weight:600;border-radius:12px 12px 4px 12px;align-self:flex-end;}
.chat-typing-wrap{align-self:flex-start;background:rgba(0,238,255,.1);border:1px solid rgba(0,238,255,.15);border-radius:12px 12px 12px 4px;padding:.4rem .6rem;display:flex;gap:3px;align-items:center;}
.chat-typing-wrap span{width:6px;height:6px;border-radius:50%;background:var(--cyan);opacity:.5;animation:typingDot 1.4s infinite;}
.chat-typing-wrap span:nth-child(2){animation-delay:.2s;}
.chat-typing-wrap span:nth-child(3){animation-delay:.4s;}
@keyframes typingDot{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.chat-footer{padding:.65rem;border-top:1px solid rgba(255,255,255,.06);display:flex;gap:.4rem;}
.chat-input{flex:1;background:rgba(255,255,255,.05);border:1px solid rgba(0,238,255,.2);border-radius:10px;padding:.42rem .7rem;color:var(--white);font-family:'DM Sans',sans-serif;font-size:.76rem;outline:none;}
.chat-input:focus{border-color:var(--cyan);}
.chat-send{width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,var(--cyan),#0077ff);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s;}
.chat-send:hover{transform:scale(1.08);}
/* AI intake chips */
.chat-progress{padding:.45rem .85rem .3rem;border-top:1px solid rgba(255,255,255,.05);display:flex;align-items:center;gap:.35rem;}
.chat-progress-dot{width:7px;height:7px;border-radius:50%;background:rgba(0,238,255,.18);transition:all .3s;flex-shrink:0;}
.chat-progress-dot.done{background:var(--cyan);}
.chat-progress-dot.active{background:var(--cyan);box-shadow:0 0 7px var(--cyan);width:16px;border-radius:4px;}
.chat-chips-wrap{padding:0 .65rem .6rem;display:flex;flex-wrap:wrap;gap:.38rem;min-height:0;}
.chat-chip{background:rgba(0,238,255,.09);border:1px solid rgba(0,238,255,.22);border-radius:20px;color:var(--cyan);font-family:'DM Sans',sans-serif;font-size:.71rem;font-weight:600;padding:.28rem .65rem;cursor:pointer;transition:background .18s,border-color .18s;white-space:nowrap;}
.chat-chip:hover{background:rgba(0,238,255,.2);border-color:var(--cyan);}
.chat-contact-form{padding:.4rem .65rem .6rem;display:none;flex-direction:column;gap:.4rem;}
.chat-contact-form input{background:rgba(255,255,255,.05);border:1px solid rgba(0,238,255,.2);border-radius:10px;padding:.42rem .65rem;color:var(--white);font-family:'DM Sans',sans-serif;font-size:.75rem;outline:none;width:100%;box-sizing:border-box;}
.chat-contact-form input:focus{border-color:var(--cyan);}
.chat-contact-form .ccf-btn{padding:.48rem;border-radius:10px;background:linear-gradient(135deg,var(--cyan),#0077ff);color:#000;border:none;font-family:'Syne',sans-serif;font-weight:700;font-size:.78rem;cursor:pointer;transition:opacity .2s;}
.chat-contact-form .ccf-btn:disabled{opacity:.5;cursor:not-allowed;}
.chat-send-inquiry{display:none;margin:.15rem .65rem .7rem;padding:.52rem;border-radius:10px;background:linear-gradient(135deg,#10B981,#0077aa);color:#fff;border:none;font-family:'Syne',sans-serif;font-weight:700;font-size:.8rem;cursor:pointer;transition:opacity .2s;width:calc(100% - 1.3rem);}
.chat-send-inquiry:disabled{opacity:.5;cursor:not-allowed;}

@keyframes scrollBounce{0%,100%{transform:translateX(-50%) translateY(0);opacity:.6}50%{transform:translateX(-50%) translateY(7px);opacity:1}}
[data-parallax]{will-change:transform;transform:translate3d(0,0,0);transition:transform .18s linear;}
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;}
.service-card{padding:2rem;border-radius:var(--radius-lg);background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(16px);transition:var(--transition);cursor:none;}
.service-card:hover{border-color:rgba(0,238,255,.3);box-shadow:0 16px 50px rgba(0,238,255,.07);transform:translateY(-6px);}
.service-num{font-family:'Syne',sans-serif;font-weight:800;font-size:2.5rem;line-height:1;opacity:.08;margin-bottom:-.5rem;background:linear-gradient(135deg,var(--cyan),var(--magenta));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.narrative-section{position:relative;overflow:hidden;}
.narrative-section::before{content:'';position:absolute;inset:8% 10% auto;background:radial-gradient(circle at 20% 30%,rgba(0,238,255,.12),transparent 28%),radial-gradient(circle at 80% 20%,rgba(255,0,153,.12),transparent 26%),radial-gradient(circle at 50% 100%,rgba(123,92,255,.1),transparent 35%);height:640px;pointer-events:none;filter:blur(24px);}
.story-shell{position:relative;padding:2rem;border-radius:30px;background:linear-gradient(160deg,rgba(13,21,41,.9),rgba(13,21,41,.72));border:1px solid rgba(0,238,255,.12);box-shadow:0 28px 80px rgba(0,0,0,.35);overflow:hidden;}
.story-shell::after{content:'';position:absolute;inset:auto -15% -30% auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(0,238,255,.12),transparent 70%);pointer-events:none;}
.story-grid{display:grid;grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr);gap:1.6rem;align-items:start;}
.story-panel{position:sticky;top:calc(var(--nav-h) + 1.5rem);padding:1.75rem;border-radius:24px;background:rgba(7,12,25,.88);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(16px);overflow:hidden;}
.story-panel::before{content:'';position:absolute;inset:-20% 35% auto -12%;height:180px;background:radial-gradient(circle,rgba(0,238,255,.14),transparent 70%);pointer-events:none;}
.story-kicker{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;position:relative;z-index:1;}
.story-progress{display:flex;align-items:center;gap:.8rem;}
.story-index{font-family:'Syne',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.14em;color:var(--cyan);}
.story-progress-line{width:72px;height:1px;background:linear-gradient(90deg,var(--cyan),rgba(255,255,255,.12));}
.story-panel h3{font-size:clamp(1.55rem,3vw,2.2rem);margin-bottom:.85rem;max-width:12ch;position:relative;z-index:1;}
.story-panel p{color:#94A3B8;line-height:1.8;position:relative;z-index:1;}
.story-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:1.5rem 0 1.2rem;position:relative;z-index:1;}
.story-stat{padding:.85rem;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);}
.story-stat strong{display:block;font-family:'Syne',sans-serif;font-size:1rem;color:var(--white);margin-bottom:.18rem;}
.story-stat span{font-size:.68rem;color:#94A3B8;line-height:1.45;}
.story-chart{display:grid;gap:.55rem;margin-bottom:1.2rem;position:relative;z-index:1;}
.story-chart-row{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:.8rem;font-size:.68rem;color:#94A3B8;}
.story-chart-row i{display:block;height:9px;border-radius:999px;background:rgba(255,255,255,.05);overflow:hidden;position:relative;}
.story-chart-row b{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--cyan),#3399ff);box-shadow:0 0 16px rgba(0,238,255,.28);transition:width .45s ease;}
.story-proof{display:grid;gap:.55rem;position:relative;z-index:1;}
.story-proof-item{display:flex;align-items:flex-start;gap:.65rem;padding:.72rem .8rem;border-radius:14px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);transition:var(--transition);}
.story-proof-item.active{background:rgba(0,238,255,.08);border-color:rgba(0,238,255,.22);transform:translateX(4px);}
.story-proof-bullet{width:22px;height:22px;border-radius:7px;background:rgba(0,238,255,.12);display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:.68rem;font-weight:800;color:var(--cyan);flex-shrink:0;}
.story-proof-item strong{display:block;font-size:.78rem;font-family:'Syne',sans-serif;color:var(--white);margin-bottom:.14rem;}
.story-proof-item span{font-size:.7rem;color:#94A3B8;line-height:1.55;}
.story-steps{display:grid;gap:1rem;}
.story-step{position:relative;padding:1.35rem 1.35rem 1.45rem 1.55rem;border-radius:24px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.06);transition:transform .35s ease,border-color .35s ease,background .35s ease,box-shadow .35s ease;}
.story-step::before{content:'';position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:999px;background:linear-gradient(180deg,rgba(0,238,255,.1),rgba(255,0,153,.45),rgba(0,238,255,.08));opacity:.35;transition:opacity .35s ease,box-shadow .35s ease;}
.story-step:hover{transform:translateY(-4px);border-color:rgba(0,238,255,.18);background:rgba(0,238,255,.05);box-shadow:0 18px 44px rgba(0,0,0,.18);}
.story-step.active{background:linear-gradient(135deg,rgba(0,238,255,.08),rgba(255,255,255,.025));border-color:rgba(0,238,255,.26);box-shadow:0 20px 50px rgba(0,238,255,.08);}
.story-step.active::before{opacity:1;box-shadow:0 0 20px rgba(0,238,255,.35);}
.story-step-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;}
.story-step-num{font-family:'Syne',sans-serif;font-size:.72rem;font-weight:800;letter-spacing:.15em;color:#8BA0B4;transition:color .3s ease;}
.story-step.active .story-step-num{color:var(--cyan);}
.story-step-tag{font-size:.62rem;font-family:'Syne',sans-serif;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.34rem .68rem;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#94A3B8;}
.story-step h4{font-size:1.12rem;margin-bottom:.55rem;max-width:28ch;}
.story-step p{font-size:.88rem;color:#94A3B8;line-height:1.78;max-width:58ch;}
.story-step-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1rem 0 1.15rem;}
.story-step-metric{padding:.8rem;border-radius:14px;background:rgba(7,12,25,.82);border:1px solid rgba(255,255,255,.06);}
.story-step-metric strong{display:block;font-family:'Syne',sans-serif;color:var(--white);font-size:.96rem;margin-bottom:.18rem;}
.story-step-metric span{display:block;font-size:.67rem;color:#94A3B8;line-height:1.45;}
.story-outcome{display:flex;flex-wrap:wrap;gap:.5rem;}
.story-pill{display:inline-flex;align-items:center;gap:.45rem;font-size:.7rem;font-family:'Syne',sans-serif;font-weight:700;color:var(--white);padding:.45rem .75rem;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);transition:var(--transition);}
.story-step.active .story-pill{background:rgba(0,238,255,.09);border-color:rgba(0,238,255,.18);}
.story-arrow{display:inline-flex;align-items:center;gap:.45rem;font-family:'Syne',sans-serif;font-size:.74rem;font-weight:700;color:var(--cyan);margin-top:1rem;}
.story-arrow svg{transition:transform .3s ease;}
.story-step:hover .story-arrow svg{transform:translateX(4px);}
.pos-demo-section{position:relative;}
.pos-demo-section::before{content:'';position:absolute;inset:10% 0 auto auto;width:420px;height:420px;background:radial-gradient(circle,rgba(255,0,153,.09),transparent 70%);pointer-events:none;filter:blur(10px);}
.demo-shell{padding:2rem;border-radius:28px;background:linear-gradient(165deg,rgba(13,21,41,.92),rgba(7,12,25,.84));border:1px solid rgba(0,238,255,.12);box-shadow:0 26px 80px rgba(0,0,0,.35);}
.demo-top{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:1.5rem;}
.demo-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:1rem;align-items:start;}
.demo-screen{border-radius:24px;background:rgba(7,12,25,.92);border:1px solid rgba(255,255,255,.08);overflow:hidden;}
.demo-screen-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02);}
.demo-chip-row{display:flex;gap:.45rem;flex-wrap:wrap;}
.demo-chip{font-size:.62rem;font-family:'Syne',sans-serif;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.36rem .62rem;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#94A3B8;}
.demo-chip.live{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.24);color:#10B981;}
.demo-chip.ghost{background:rgba(0,238,255,.08);border-color:rgba(0,238,255,.16);color:var(--cyan);}
.demo-board{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem;padding:1rem;}
.demo-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;}
.demo-item{position:relative;text-align:left;padding:1rem;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease;}
.demo-item:hover{transform:translateY(-3px);border-color:rgba(0,238,255,.22);background:rgba(0,238,255,.06);box-shadow:0 14px 36px rgba(0,238,255,.08);}
.demo-item.added{border-color:rgba(16,185,129,.35);background:rgba(16,185,129,.08);}
.demo-item strong{display:block;font-family:'Syne',sans-serif;font-size:.88rem;color:var(--white);margin-bottom:.2rem;}
.demo-item span{display:block;font-size:.73rem;color:#94A3B8;line-height:1.55;}
.demo-item em{position:absolute;right:.95rem;top:.95rem;font-style:normal;font-family:'Syne',sans-serif;font-size:.76rem;font-weight:700;color:var(--cyan);}
.demo-order{padding:1rem;border-radius:20px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);display:grid;gap:.85rem;height:100%;}
.demo-order-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.demo-order-items{display:grid;gap:.55rem;min-height:160px;}
.demo-order-line{display:grid;grid-template-columns:1fr auto auto;gap:.65rem;align-items:center;padding:.7rem .75rem;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);}
.demo-order-line strong{font-size:.8rem;font-family:'Syne',sans-serif;color:var(--white);}
.demo-order-line span{font-size:.7rem;color:#94A3B8;}
.demo-order-line button{width:24px;height:24px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:#94A3B8;}
.demo-empty{padding:1.1rem;border-radius:16px;border:1px dashed rgba(255,255,255,.1);font-size:.75rem;color:#8BA0B4;text-align:center;}
.demo-order-total{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem;border-radius:16px;background:linear-gradient(135deg,rgba(0,238,255,.08),rgba(0,119,255,.05));border:1px solid rgba(0,238,255,.18);}
.demo-order-total strong{font-family:'Syne',sans-serif;font-size:1rem;color:var(--white);}
.demo-actions{display:flex;flex-wrap:wrap;gap:.55rem;}
.demo-action{flex:1;min-width:140px;padding:.75rem .9rem;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);font-family:'Syne',sans-serif;font-size:.72rem;font-weight:700;color:#94A3B8;transition:var(--transition);}
.demo-action:hover,.demo-action.active{border-color:rgba(0,238,255,.2);background:rgba(0,238,255,.08);color:var(--cyan);}
.demo-side{display:grid;gap:1rem;}
.demo-widget{padding:1rem;border-radius:20px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);}
.demo-widget h4{font-size:.9rem;margin-bottom:.7rem;}
.demo-log{display:grid;gap:.55rem;}
.demo-log-item{display:flex;gap:.65rem;align-items:flex-start;padding:.7rem;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);}
.demo-log-item strong{display:block;font-family:'Syne',sans-serif;font-size:.74rem;color:var(--white);margin-bottom:.1rem;}
.demo-log-item span{display:block;font-size:.68rem;color:#94A3B8;line-height:1.5;}
.demo-dot{width:11px;height:11px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px rgba(0,238,255,.35);flex-shrink:0;margin-top:.2rem;}
.demo-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;}
.demo-stat{padding:.85rem;border-radius:16px;background:rgba(7,12,25,.92);border:1px solid rgba(255,255,255,.06);}
.demo-stat strong{display:block;font-family:'Syne',sans-serif;font-size:.96rem;color:var(--white);margin-bottom:.18rem;}
.demo-stat span{font-size:.66rem;color:#94A3B8;line-height:1.45;}
.portfolio-filters{display:flex;gap:.55rem;flex-wrap:wrap;}
.portfolio-filter{font-family:'Syne',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.55rem .9rem;border-radius:999px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);color:#94A3B8;transition:var(--transition);}
.portfolio-filter:hover,.portfolio-filter.active{background:rgba(0,238,255,.1);border-color:rgba(0,238,255,.22);color:var(--cyan);box-shadow:0 0 18px rgba(0,238,255,.12);}
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;}
.portfolio-card{position:relative;overflow:hidden;}
.portfolio-card::after{content:'';position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(180deg,transparent,rgba(8,14,28,.02),rgba(8,14,28,.12));pointer-events:none;}
.portfolio-card.hidden{display:none;}
.portfolio-card:hover .portfolio-link-icon{transform:translateX(4px);}
.portfolio-link-icon{transition:transform .28s ease;}
.portfolio-modal{position:fixed;inset:0;z-index:1200;background:rgba(8,14,28,.82);backdrop-filter:blur(18px);display:none;align-items:center;justify-content:center;padding:2rem;}
.portfolio-modal.open{display:flex;animation:chatIn .35s cubic-bezier(0.23,1,0.32,1);}
.portfolio-modal-shell{width:min(1120px,100%);max-height:min(88vh,920px);overflow:auto;border-radius:28px;background:linear-gradient(170deg,rgba(13,21,41,.97),rgba(7,12,25,.95));border:1px solid rgba(0,238,255,.14);box-shadow:0 28px 100px rgba(0,0,0,.55);}
.portfolio-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.35rem 1.35rem 1rem;border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;background:rgba(13,21,41,.92);backdrop-filter:blur(14px);z-index:1;}
.portfolio-modal-close{width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:#94A3B8;}
.portfolio-modal-body{padding:1.35rem;display:grid;grid-template-columns:1.05fr .95fr;gap:1rem;}
.portfolio-modal-visual{border-radius:22px;background:rgba(7,12,25,.9);border:1px solid rgba(255,255,255,.08);padding:1rem;display:grid;gap:1rem;}
.portfolio-modal-preview{border-radius:18px;overflow:hidden;background:#08111f;min-height:280px;display:flex;align-items:center;justify-content:center;}
.portfolio-modal-preview img{width:100%;height:100%;object-fit:cover;}
.portfolio-modal-badges{display:flex;gap:.45rem;flex-wrap:wrap;}
.portfolio-modal-badge{font-size:.66rem;font-family:'Syne',sans-serif;font-weight:700;padding:.34rem .62rem;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:#94A3B8;}
.portfolio-modal-copy{display:grid;gap:1rem;}
.portfolio-modal-copy p{color:#94A3B8;line-height:1.8;}
.portfolio-modal-list{display:grid;gap:.65rem;}
.portfolio-modal-list li{display:flex;align-items:flex-start;gap:.6rem;padding:.78rem .85rem;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);font-size:.8rem;color:#CBD5E1;line-height:1.6;}
.portfolio-modal-list i{width:20px;height:20px;border-radius:7px;background:rgba(0,238,255,.12);display:flex;align-items:center;justify-content:center;color:var(--cyan);font-style:normal;font-family:'Syne',sans-serif;font-size:.65rem;font-weight:800;flex-shrink:0;}
.portfolio-modal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;}
.portfolio-modal-stat{padding:.9rem;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);}
.portfolio-modal-stat strong{display:block;font-family:'Syne',sans-serif;font-size:1rem;color:var(--white);margin-bottom:.18rem;}
.portfolio-modal-stat span{font-size:.67rem;color:#94A3B8;line-height:1.45;}
.portfolio-modal-actions{display:flex;gap:.75rem;flex-wrap:wrap;}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;}
.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2.5rem;}
.stat-box{padding:1.5rem;border-radius:var(--radius);background:var(--glass);border:1px solid var(--glass-b);text-align:center;}
.stat-num{font-family:'Syne',sans-serif;font-weight:800;font-size:2.2rem;line-height:1;margin-bottom:.3rem;}
.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;position:relative;}
.process-steps::before{content:'';position:absolute;top:28px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),var(--magenta),transparent);opacity:.2;}
.process-step{padding:0 1.5rem;text-align:center;}
.process-dot{width:56px;height:56px;border-radius:50%;background:var(--glass);border:1.5px solid var(--glass-b);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;font-family:'Syne',sans-serif;font-weight:800;font-size:1.1rem;color:var(--cyan);position:relative;z-index:1;box-shadow:0 0 18px rgba(0,238,255,.15);}
.test-wrap{overflow:hidden;}
.test-track{display:flex;gap:1.5rem;transition:transform .6s cubic-bezier(0.23,1,0.32,1);}
.test-card{flex:0 0 min(380px,88vw);padding:2rem;border-radius:var(--radius-lg);background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(14px);}
.stars{color:#F59E0B;font-size:.9rem;letter-spacing:2px;margin-bottom:1rem;}
.test-quote{font-size:.9rem;line-height:1.75;color:var(--text);font-style:italic;margin-bottom:1.5rem;}
.test-author{display:flex;align-items:center;gap:.75rem;}
.test-controls{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem;}
.ctrl-btn{width:40px;height:40px;border-radius:50%;background:var(--glass);border:1px solid var(--glass-b);display:flex;align-items:center;justify-content:center;color:#94A3B8;transition:var(--transition);cursor:none;}
.ctrl-btn:hover{color:var(--cyan);border-color:var(--cyan);}
.dots-row{display:flex;gap:6px;align-items:center;}
.cta-strip{border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(0,238,255,.07),rgba(255,0,153,.06));border:1px solid rgba(0,238,255,.2);padding:4rem 3rem;text-align:center;position:relative;overflow:hidden;}
.cta-strip::before{content:'';position:absolute;top:-80px;left:-80px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(0,238,255,.08),transparent 70%);}
.cta-strip::after{content:'';position:absolute;bottom:-60px;right:-60px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(255,0,153,.07),transparent 70%);}



/* ============= NEOMORPHIC + GLASSMORPHISM ENHANCEMENTS ============= */
/* Inner shadows + depth layering */
.showcase-wrap{position:relative;box-shadow:inset 0 2px 8px rgba(0,238,255,.05),0 24px 70px rgba(0,0,0,.35);background:linear-gradient(160deg,rgba(13,21,41,.92),rgba(13,21,41,.76)) !important;}
.showcase-screen{box-shadow:inset 0 1px 4px rgba(0,238,255,.03),0 12px 32px rgba(0,0,0,.25);}
.stage-shell{box-shadow:inset 0 1.5px 6px rgba(0,238,255,.04),0 20px 60px rgba(0,0,0,.45) !important;}
.story-step{box-shadow:inset 0 1px 3px rgba(0,238,255,.02),0 18px 44px rgba(0,0,0,.18) !important;}

/* Gradient mesh backgrounds + blob shapes */
.hero::after{content:'';position:absolute;inset:0;background:url('data:image/svg+xml,<svg viewBox="0 0 1000 1000" xmlns="http://www.w3.org/2000/svg"><defs><filter id="blur"><feGaussianBlur in="SourceGraphic" stdDeviation="40"/></filter></defs><g filter="url(%23blur)"><path d="M300,200 Q400,100 500,200 T700,200 Q800,300 700,400 T500,600 Q400,700 300,600 T100,400 Q100,300 300,200" fill="rgba(0,238,255,0.06)"/><path d="M600,700 Q700,600 800,700 T900,900 Q800,950 700,900 T500,800 Q550,750 600,700" fill="rgba(255,0,153,0.05)"/></g></svg>') no-repeat center;background-size:cover;pointer-events:none;z-index:0;}

/* Animated gradient backgrounds for cards */
.showcase-wrap::before{content:'';position:absolute;inset:0;background:linear-gradient(45deg,rgba(0,238,255,.02),transparent 50%,rgba(255,0,153,.01));border-radius:26px;opacity:0;pointer-events:none;}
.showcase-wrap:hover::before{opacity:.8;}
.showcase-wrap::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(0,238,255,.04),transparent 40%),radial-gradient(circle at 80% 30%,rgba(255,0,153,.03),transparent 35%);border-radius:26px;pointer-events:none;}

/* ============= HOVER EFFECTS + 3D PERSPECTIVE ============= */
.showcase-wrap{transition:all .4s cubic-bezier(0.23,1,0.32,1);}
.showcase-wrap:hover{will-change:transform;transform:perspective(1200px) rotateX(.8deg) translateY(-8px);box-shadow:inset 0 2px 12px rgba(0,238,255,.08),0 32px 90px rgba(0,0,0,.45);}

.showcase-tab{position:relative;overflow:hidden;transition:all .3s cubic-bezier(0.23,1,0.32,1);}
.showcase-tab::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:translateX(-100%);transition:transform .5s;}
.showcase-tab:hover::after{transform:translateX(100%);}

/* Inset glass on hover */
.service-card{transition:all .35s cubic-bezier(0.23,1,0.32,1);}
.service-card:hover{box-shadow:inset 0 1px 3px rgba(0,238,255,.06),0 16px 50px rgba(0,238,255,.07);border-color:rgba(0,238,255,.4) !important;}

/* ============= CTA BUTTONS - STRONGER CONTRAST ============= */
.btn{position:relative;overflow:hidden;transition:all .3s cubic-bezier(0.23,1,0.32,1);}
.btn::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);transform:translateX(-100%);transition:transform .4s;}
.btn:hover::before{transform:translateX(100%);}

.btn-primary{background:linear-gradient(135deg,var(--cyan),#0066ff) !important;box-shadow:0 8px 24px rgba(0,238,255,0.4),inset 0 1px 0 rgba(255,255,255,.2);font-weight:700;letter-spacing:.05em;transition:all .3s ease;}
.btn-primary:hover{box-shadow:0 12px 38px rgba(0,238,255,0.6),inset 0 1px 0 rgba(255,255,255,.3);transform:translateY(-3px);letter-spacing:.08em;}

.btn-outline{border:2px solid var(--cyan) !important;background:transparent !important;color:var(--cyan) !important;transition:all .3s ease;box-shadow:0 0 12px rgba(0,238,255,0.2);}
.btn-outline:hover{background:rgba(0,238,255,.1) !important;box-shadow:0 8px 24px rgba(0,238,255,0.4);transform:translateY(-2px);}

/* ============= SCROLL ANIMATIONS ============= */
.fade-in-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease;}
.fade-in-on-scroll.in-view{opacity:1;transform:translateY(0);}

.slide-in-left{opacity:0;transform:translateX(-30px);transition:opacity .7s ease .1s,transform .7s ease .1s;}
.slide-in-left.in-view{opacity:1;transform:translateX(0);}

.slide-in-right{opacity:0;transform:translateX(30px);transition:opacity .7s ease .1s,transform .7s ease .1s;}
.slide-in-right.in-view{opacity:1;transform:translateX(0);}

.scale-in{opacity:0;transform:scale(.95);transition:opacity .5s ease,transform .5s ease;}
.scale-in.in-view{opacity:1;transform:scale(1);}

/* Parallax effect on elements */
[data-parallax]{will-change:transform;}

/* ============= MICRO INTERACTIONS ============= */
@keyframes meshPulse{0%,100%{opacity:0}50%{opacity:.8}}
@keyframes floatUp{0%{transform:translateY(0);opacity:.2}50%{opacity:1;transform:translateY(-8px)}100%{transform:translateY(0);opacity:.2}}
@keyframes shimmer{0%{background-position:-1000px 0}100%{background-position:1000px 0}}

/* Floating accent elements */
.floating-accent{animation:floatUp 4s ease-in-out infinite;}
.floating-accent.delay-1{animation-delay:.5s;}
.floating-accent.delay-2{animation-delay:1s;}

/* Service cards - premium feel */
.service-card::after{content:'';position:absolute;top:-50%;right:-50%;width:100px;height:100px;background:radial-gradient(circle,rgba(0,238,255,.1),transparent 70%);border-radius:50%;opacity:0;transition:all .5s ease;}
.service-card:hover::after{top:10%;right:10%;opacity:1;}

/* ============= STORY STEPS - Enhanced depth ============= */
.story-step{position:relative;overflow:hidden;}
.story-step::before{box-shadow:inset -2px 0 12px rgba(0,238,255,.08) !important;}
.story-step:hover::before{box-shadow:inset -2px 0 16px rgba(0,238,255,.15) !important;}

/* CTA Strip - more dramatic */
.cta-strip{background:linear-gradient(135deg,rgba(0,238,255,.09),rgba(255,0,153,.07)) !important;backdrop-filter:blur(8px);box-shadow:inset 0 1px 2px rgba(0,238,255,.06),0 12px 40px rgba(0,0,0,.25);}

/* Enhanced process dots - glow effect */
.process-dot{box-shadow:0 0 24px rgba(0,238,255,.25),inset 0 1px 3px rgba(0,238,255,.1) !important;transition:all .3s ease;}
.process-dot:hover{transform:scale(1.15);box-shadow:0 0 32px rgba(0,238,255,.4),inset 0 1px 4px rgba(0,238,255,.15);}

/* Portfolio cards - staggered animation */
/* Portfolio cards - animacja przez IntersectionObserver (.fade-in-on-scroll) */
/* Usunięto globalne opacity:0 które blokowało Speed Index */

@keyframes slideInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}