*, *::before, *::after {
     box-sizing: border-box;
     margin: 0;
     padding: 0;
}
 :root {
     --orange: #FF6B1A;
     --orange-dim: #b84a0f;
     --orange-glow: rgba(255,107,26,0.25);
     --black: #0F0F0F;
     --surface: #161616;
     --surface2: #1e1e1e;
     --glass: rgba(255,255,255,0.04);
     --glass-border: rgba(255,255,255,0.08);
     --white: #FFFFFF;
     --muted: rgba(255,255,255,0.5);
     --font-head: 'Syne', roboto,Arial, Helvetica, sans-serif;
     --font-body: 'DM Sans', roboto,Arial, Helvetica, sans-serif;
     --ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.nav-logo{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700;
}

.logo-icon{
  width:60px;
  height:60px;
  object-fit:contain;
}
 html {
     scroll-behavior: smooth;
     font-size: 16px;
}
 body {
     background: var(--black);
     color: var(--white);
     font-family: roboto,Arial, Helvetica, sans-serif;
     font-weight: 300;
     line-height: 1.6;
     overflow-x: hidden;
}
 body::before {
     content:'';
     position:fixed;
     inset:0;
     background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
     pointer-events:none;
     z-index:9999;
     opacity:0.35;
}
 a {
     color:inherit;
     text-decoration:none;
}
 img {
     display:block;
     max-width:100%;
}
 button {
     
     font-family:roboto,Arial, Helvetica, sans-serif;
}
 .container {
     max-width:100%;
     margin:0 auto;
     padding:0 2rem;
}
 .tag {
     display:inline-block;
     font-family:var(--font-head);
     font-size:0.65rem;
     font-weight:700;
     letter-spacing:0.18em;
     text-transform:uppercase;
     color:var(--orange);
     border:1px solid rgba(255,107,26,0.35);
     padding:0.3rem 0.9rem;
     border-radius:2px;
     margin-bottom:1.2rem;
}
 .reveal {
     opacity:0;
     transform:translateY(36px);
     transition:opacity 0.7s var(--ease), transform 0.7s var(--ease);
}
 .reveal.visible {
     opacity:1;
     transform:none;
}
/* NAV */
 header {
     position:fixed;
     top:0;
     left:0;
     right:0;
     z-index:1000;
}
 nav {
     display:flex;
     align-items:center;
     justify-content:space-between;
     padding:1.1rem 2.5rem;
     background:rgba(15,15,15,0.65);
     backdrop-filter:blur(18px) saturate(180%);
     -webkit-backdrop-filter:blur(18px) saturate(180%);
     border-bottom:1px solid var(--glass-border);
     transition:background 0.3s var(--ease);
}
 .nav-logo {
     display:flex;
     align-items:center;
     gap:0.75rem;
     font-family:var(--font-head);
     font-weight:800;
     font-size:1.15rem;
     letter-spacing:0.02em;
}
 .nav-logo .logo-mark {
     width:34px;
     height:34px;
     background:var(--orange);
     display:grid;
     place-items:center;
     font-size:0.7rem;
     font-weight:800;
     color:#fff;
     clip-path:polygon(0 0,100% 0,100% 75%,75% 100%,0 100%);
}
 .nav-links {
     display:flex;
     align-items:center;
     gap:2.2rem;
     list-style:none;
}
 .nav-links a {
     font-size:0.85rem;
     font-weight:400;
     letter-spacing:0.04em;
     color:var(--muted);
     transition:color 0.25s;
     position:relative;
}
 .nav-links a::after {
     content:'';
     position:absolute;
     bottom:-3px;
     left:0;
     width:0;
     height:1px;
     background:var(--orange);
     transition:width 0.3s var(--ease);
}
 .nav-links a:hover {
     color:var(--white);
}
 .nav-links a:hover::after {
     width:100%;
}
 .nav-cta {
     background:var(--orange)!important;
     color:#fff!important;
     padding:0.45rem 1.2rem;
     border-radius:3px;
     font-weight:500!important;
     letter-spacing:0.04em;
     transition:background 0.25s,box-shadow 0.25s!important;
}
 .nav-cta:hover {
     background:#e55a0f!important;
     box-shadow:0 0 22px var(--orange-glow)!important;
}
 .nav-cta::after {
     display:none!important;
}
 .hamburger{
  display:none;
  flex-direction:column;
  gap:5px;
  background:none;
  border:none;
  padding:4px;
  position:relative;
  z-index:1001;
}
 .hamburger span {
     display:block;
     width:24px;
     height:2px;
     background:var(--white);
     border-radius:2px;
     transition:transform 0.3s,opacity 0.3s;
}
 .hamburger.open span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
}
 .hamburger.open span:nth-child(2){
    opacity:0;
}
 .hamburger.open span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
}
@media (max-width:768px){
  .hamburger{
    display:flex;
  }
}

/* HERO */
 #home {
     min-height:100vh;
     display:flex;
     align-items:center;
     position:relative;
     overflow:hidden;
     padding-top:80px;
}
 #home::before {
     content:'';
     position:absolute;
     inset:0;
     background-image:linear-gradient(rgba(255,107,26,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,107,26,0.04) 1px,transparent 1px);
     background-size:60px 60px;
     mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 30%,transparent 100%);
}
 .hero-glow {
     position:absolute;
     top:10%;
     right:5%;
     width:600px;
     height:600px;
     background:radial-gradient(circle,rgba(255,107,26,0.12) 0%,transparent 65%);
     pointer-events:none;
}
 .hero-inner {
     position:relative;
     z-index:2;
     display:grid;
     grid-template-columns:1fr 1fr;
     gap:4rem;
     align-items:center;
     width:100%;
}
 .hero-content {
     max-width:580px;
}
 .hero-eyebrow {
     display:flex;
     align-items:center;
     gap:0.7rem;
     margin-bottom:1.5rem;
}
 .hero-eyebrow .dot {
     width:6px;
     height:6px;
     border-radius:50%;
     background:var(--orange);
     animation:pulse-dot 2s ease-in-out infinite;
}
 @keyframes pulse-dot {
     0%,100%{
        box-shadow:0 0 0 0 rgba(255,107,26,0.6);
    }
    50%{
        box-shadow:0 0 0 8px rgba(255,107,26,0);
    }
}
 .hero-eyebrow span {
     font-size:0.75rem;
     letter-spacing:0.15em;
     text-transform:uppercase;
     color:var(--orange);
     font-weight:500;
}
 h1 {
     font-family:var(--font-head);
     font-size:clamp(2.4rem,5vw,3.8rem);
     font-weight:800;
     line-height:1.08;
     letter-spacing:-0.02em;
     margin-bottom:1.4rem;
}
 h1 em {
     font-style:normal;
     color:var(--orange);
}
 .hero-sub {
     font-size:1.05rem;
     color:rgba(255,255,255,0.6);
     line-height:1.7;
     max-width:480px;
     margin-bottom:2.2rem;
}
 .hero-btns {
     display:flex;
     gap:1rem;
     flex-wrap:wrap;
}
 .btn-primary {
     background:var(--orange);
     color:#fff;
     padding:0.75rem 1.9rem;
     border:none;
     border-radius:3px;
     font-size:0.9rem;
     font-weight:500;
     letter-spacing:0.04em;
     transition:background 0.25s,box-shadow 0.25s,transform 0.2s;
}
 .btn-primary:hover {
     background:#e55a0f;
     box-shadow:0 0 30px var(--orange-glow);
     transform:translateY(-1px);
}
 .btn-ghost {
     background:transparent;
     color:var(--white);
     padding:0.75rem 1.9rem;
     border:1px solid var(--glass-border);
     border-radius:3px;
     font-size:0.9rem;
     font-weight:400;
     letter-spacing:0.04em;
     transition:border-color 0.25s,color 0.25s,transform 0.2s;
}
 .btn-ghost:hover {
     border-color:var(--orange);
     color:var(--orange);
     transform:translateY(-1px);
}
 .hero-visual {
     display:flex;
     justify-content:center;
     align-items:center;
     position:relative;
}
 .cube-scene {
     width:280px;
     height:280px;
     perspective:800px;
     position:relative;
}
 .cube {
     width:140px;
     height:140px;
     position:absolute;
     top:50%;
     left:50%;
     transform-style:preserve-3d;
     transform:translate(-50%,-50%) rotateX(-20deg) rotateY(30deg);
     animation:rotate-cube 12s linear infinite;
}
 @keyframes rotate-cube {
     to{
        transform:translate(-50%,-50%) rotateX(-20deg) rotateY(390deg);
    }
}
 .cube-face {
     position:absolute;
     width:140px;
     height:140px;
     border:1px solid rgba(255,107,26,0.5);
     background:rgba(255,107,26,0.04);
     backdrop-filter:blur(2px);
}
 .cube-face.front{
    transform:translateZ(70px);
}
 .cube-face.back{
    transform:rotateY(180deg) translateZ(70px);
}
 .cube-face.left{
    transform:rotateY(-90deg) translateZ(70px);
}
 .cube-face.right{
    transform:rotateY(90deg) translateZ(70px);
}
 .cube-face.top{
    transform:rotateX(90deg) translateZ(70px);
}
 .cube-face.bottom{
    transform:rotateX(-90deg) translateZ(70px);
}
 .cube-inner {
     width:60px;
     height:60px;
     position:absolute;
     top:50%;
     left:50%;
     transform-style:preserve-3d;
     transform:translate(-50%,-50%) rotateX(-20deg) rotateY(30deg);
     animation:rotate-cube 6s linear infinite reverse;
}
 .cube-inner .cube-face {
     width:60px;
     height:60px;
     border-color:rgba(255,107,26,0.9);
     background:rgba(255,107,26,0.12);
     box-shadow:0 0 20px rgba(255,107,26,0.3);
}
 .cube-inner .cube-face.front{
    transform:translateZ(30px);
}
 .cube-inner .cube-face.back{
    transform:rotateY(180deg) translateZ(30px);
}
 .cube-inner .cube-face.left{
    transform:rotateY(-90deg) translateZ(30px);
}
 .cube-inner .cube-face.right{
    transform:rotateY(90deg) translateZ(30px);
}
 .cube-inner .cube-face.top{
    transform:rotateX(90deg) translateZ(30px);
}
 .cube-inner .cube-face.bottom{
    transform:rotateX(-90deg) translateZ(30px);
}
 .orbit-ring {
     position:absolute;
     top:50%;
     left:50%;
     width:240px;
     height:240px;
     transform:translate(-50%,-50%) rotateX(70deg);
     border:1px dashed rgba(255,107,26,0.25);
     border-radius:50%;
     animation:spin-ring 20s linear infinite;
}
 @keyframes spin-ring{
    to{
        transform:translate(-50%,-50%) rotateX(70deg) rotateZ(360deg);
    }
}
 .orbit-dot {
     position:absolute;
     top:-4px;
     left:50%;
     width:8px;
     height:8px;
     background:var(--orange);
     border-radius:50%;
     transform:translateX(-50%);
     box-shadow:0 0 12px var(--orange);
}
 .particle {
     position:absolute;
     border-radius:50%;
     background:var(--orange);
     opacity:0.5;
     animation:float-p 6s ease-in-out infinite;
}
 .particle:nth-child(1){
    width:4px;
    height:4px;
    top:10%;
    left:20%;
    animation-delay:0s;
}
 .particle:nth-child(2){
    width:3px;
    height:3px;
    top:80%;
    left:75%;
    animation-delay:1.5s;
}
 .particle:nth-child(3){
    width:5px;
    height:5px;
    top:60%;
    left:10%;
    animation-delay:3s;
}
 .particle:nth-child(4){
    width:3px;
    height:3px;
    top:20%;
    left:85%;
    animation-delay:4.5s;
}
 @keyframes float-p{
    0%,100%{
        transform:translateY(0);
        opacity:0.4;
    }
    50%{
        transform:translateY(-18px);
        opacity:0.9;
    }
}
 .hero-stats {
     display:flex;
     gap:2rem;
     margin-top:3rem;
     padding-top:2rem;
     border-top:1px solid var(--glass-border);
}
 .stat-num {
     font-family:var(--font-head);
     font-size:1.6rem;
     font-weight:800;
     color:var(--orange);
     line-height:1;
}
 .stat-label {
     font-size:0.75rem;
     color:var(--muted);
     letter-spacing:0.06em;
     text-transform:uppercase;
     margin-top:0.25rem;
}
/* ABOUT */
 #about {
     padding:7rem 0;
     position:relative;
}
 .about-grid {
     display:grid;
     grid-template-columns:1fr 1fr;
     gap:5rem;
     align-items:center;
}
 .about-content {
     max-width:520px;
}
 .about-visual {
     position:relative;
     display:flex;
     justify-content:center;
}
 .about-card-stack {
     position:relative;
     width:360px;
     height:260px;
     perspective:1400px;
}
 .stack-card {
     position:absolute;
     width:100%;
     height:100%;
     border-radius:8px;
     border:1px solid var(--glass-border);
     background:var(--glass);
     backdrop-filter:blur(10px);
     padding:1.6rem;
     
     display:flex;
     flex-direction:column;
     justify-content:center;
     transition:transform 0.7s cubic-bezier(.22,.61,.36,1),opacity 0.6s;
}
 .stack-card-label {
     font-size:0.7rem;
     text-transform:uppercase;
     letter-spacing:0.1em;
     color:var(--orange);
     font-weight:600;
     margin-bottom:0.5rem;
}
 .stack-card-title {
     font-family:var(--font-head);
     font-size:1rem;
     font-weight:700;
     margin-bottom:0.4rem;
}
 .stack-card-body {
     font-size:0.82rem;
     color:var(--muted);
     line-height:1.5;
}
 h2 {
     font-family:var(--font-head);
     font-size:clamp(1.8rem,3.5vw,2.6rem);
     font-weight:800;
     letter-spacing:-0.02em;
     line-height:1.15;
     margin-bottom:1.2rem;
}
 h2 em {
     font-style:normal;
     color:var(--orange);
}
 .body-large {
     font-size:1rem;
     color:rgba(255,255,255,0.65);
     line-height:1.75;
     margin-bottom:1rem;
}
 .about-pills {
     display:flex;
     flex-wrap:wrap;
     gap:0.6rem;
     margin-top:1.8rem;
}
 .pill {
     font-size:0.78rem;
     background:var(--glass);
     border:1px solid var(--glass-border);
     padding:0.35rem 0.85rem;
     border-radius:100px;
     color:rgba(255,255,255,0.7);
     letter-spacing:0.03em;
     transition:all 0.25s ease;
     cursor:default;
}
 .pill:hover {
     color:var(--orange);
     border-color:var(--orange);
     box-shadow:0 0 6px rgba(255,107,26,0.6),0 0 12px rgba(255,107,26,0.45),0 0 18px rgba(255,107,26,0.25);
}
/* SERVICES */
 #services {
     padding:7rem 0;
     background:radial-gradient(ellipse 70% 50% at 50% 0%,rgba(255,107,26,0.06) 0%,transparent 60%),var(--black);
}
 .section-header {
     text-align:center;
     max-width:600px;
     margin:0 auto 4rem;
}
 .section-sub {
     font-size:0.95rem;
     color:var(--muted);
     line-height:1.7;
}
 .services-grid {
     display:grid;
     grid-template-columns:repeat(3,1fr);
     gap:1.5rem;
}
 .service-card {
     background:var(--glass);
     border:1px solid var(--glass-border);
     border-radius:8px;
     padding:2.2rem;
     position:relative;
     overflow:hidden;
     transition:transform 0.35s var(--ease),border-color 0.35s,box-shadow 0.35s;
     cursor:default;
}
 .service-card::before {
     content:'';
     position:absolute;
     top:0;
     left:0;
     right:0;
     height:2px;
     background:linear-gradient(90deg,transparent,var(--orange),transparent);
     opacity:0;
     transition:opacity 0.35s;
}
 .service-card::after {
     content:'';
     position:absolute;
     bottom:-60px;
     right:-60px;
     width:180px;
     height:180px;
     background:radial-gradient(circle,rgba(255,107,26,0.15) 0%,transparent 65%);
     opacity:0;
     transition:opacity 0.4s;
}
 .service-card:hover {
     transform:translateY(-8px);
     border-color:rgba(255,107,26,0.35);
     box-shadow:0 20px 60px rgba(0,0,0,0.4),0 0 40px rgba(255,107,26,0.08);
}
 .service-card:hover::before{
    opacity:1;
}
 .service-card:hover::after{
    opacity:1;
}
 .service-icon {
     width:48px;
     height:48px;
     margin-bottom:1.5rem;
}
 .service-icon svg {
     width:100%;
     height:100%;
     stroke:var(--orange);
     fill:none;
}
 .service-num {
     position:absolute;
     top:1.8rem;
     right:1.8rem;
     font-family:var(--font-head);
     font-size:0.7rem;
     color:rgba(255,107,26,0.4);
     font-weight:700;
     letter-spacing:0.08em;
}
 h3 {
     font-family:var(--font-head);
     font-size:1.15rem;
     font-weight:700;
     margin-bottom:0.8rem;
     letter-spacing:-0.01em;
}
 .service-desc {
     font-size:0.88rem;
     color:var(--muted);
     line-height:1.65;
}
 .service-tags {
     display:flex;
     flex-wrap:wrap;
     gap:0.4rem;
     margin-top:1.4rem;
}
 .service-tag {
     font-size:0.7rem;
     padding:0.2rem 0.6rem;
     background:rgba(255,107,26,0.1);
     border:1px solid rgba(255,107,26,0.2);
     border-radius:2px;
     color:rgba(255,107,26,0.85);
     letter-spacing:0.04em;
}
/* PIPELINE */
 #pipeline {
     padding:7rem 0;
}
 .pipeline-steps {
     display:grid;
     grid-template-columns:repeat(4,1fr);
     gap:0;
     position:relative;
     margin-top:4rem;
}
 .pipeline-steps::before {
     content:'';
     position:absolute;
     top:36px;
     left:calc(12.5%);
     width:calc(75%);
     height:1px;
     background:linear-gradient(90deg,transparent,var(--orange),var(--orange),var(--orange),transparent);
     opacity:0.3;
}
 .pipe-step {
     display:flex;
     flex-direction:column;
     align-items:center;
     text-align:center;
     padding:0 1rem;
     position:relative;
}
 .pipe-icon {
     width:72px;
     height:72px;
     border-radius:50%;
     background:var(--surface);
     border:1px solid var(--glass-border);
     display:flex;
     align-items:center;
     justify-content:center;
     margin-bottom:1.4rem;
     position:relative;
     z-index:2;
     transition:border-color 0.3s,box-shadow 0.3s,transform 0.3s;
}
 .pipe-icon svg {
     width:26px;
     height:26px;
     stroke:var(--orange);
     fill:none;
}
 .pipe-step:hover .pipe-icon {
     border-color:var(--orange);
     box-shadow:0 0 28px rgba(255,107,26,0.3);
     transform:scale(1.08);
}
 .pipe-num {
     position:absolute;
     top:-6px;
     right:-6px;
     width:20px;
     height:20px;
     background:var(--orange);
     border-radius:50%;
     font-size:0.6rem;
     font-weight:800;
     display:flex;
     align-items:center;
     justify-content:center;
     font-family:var(--font-head);
}
 .pipe-label {
     font-family:var(--font-head);
     font-size:1.05rem;
     font-weight:700;
     letter-spacing:-0.01em;
     margin-bottom:0.5rem;
}
 .pipe-desc {
     font-size:0.82rem;
     color:var(--muted);
     line-height:1.55;
}
/* COMMUNITY */
 #community {
     padding:7rem 0;
     background:radial-gradient(ellipse 60% 40% at 80% 50%,rgba(255,107,26,0.05) 0%,transparent 60%),var(--black);
}
 .community-layout {
     display:grid;
     grid-template-columns:1fr 1.1fr;
     gap:5rem;
     align-items:center;
}
 .community-cards {
     display:flex;
     flex-direction:column;
     gap:1rem;
}
 .comm-card {
     display:flex;
     align-items:flex-start;
     gap:1.2rem;
     background:var(--glass);
     border:1px solid var(--glass-border);
     border-radius:6px;
     padding:1.4rem 1.6rem;
     transition:border-color 0.3s,transform 0.3s;
}
 .comm-card:hover {
     border-color:rgba(255,107,26,0.3);
     transform:translateX(6px);
}
 .comm-icon {
     width:40px;
     height:40px;
     flex-shrink:0;
     background:rgba(255,107,26,0.1);
     border:1px solid rgba(255,107,26,0.2);
     border-radius:6px;
     display:flex;
     align-items:center;
     justify-content:center;
}
 .comm-icon svg {
     width:20px;
     height:20px;
     stroke:var(--orange);
     fill:none;
}
 .comm-text h4 {
     font-family:var(--font-head);
     font-size:0.95rem;
     font-weight:700;
     margin-bottom:0.25rem;
}
 .comm-text p {
     font-size:0.82rem;
     color:var(--muted);
     line-height:1.5;
}
 .sector-grid {
     display:grid;
     grid-template-columns:repeat(2,1fr);
     gap:0.75rem;
     margin-top:1.5rem;
}
 .sector-item {
     display:flex;
     align-items:center;
     gap:0.6rem;
     font-size:0.82rem;
     color:rgba(255,255,255,0.6);
}
 .sector-item::before {
     content:'';
     width:6px;
     height:6px;
     background:var(--orange);
     border-radius:1px;
     flex-shrink:0;
}
/* CONTACT */
 #contact {
     padding:7rem 0;
}
 .contact-wrap {
     display:grid;
     grid-template-columns:1fr 1.2fr;
     gap:5rem;
     align-items:start;
}
 .contact-detail {
     display:flex;
     align-items:center;
     gap:0.8rem;
     margin-top:2rem;
     font-size:0.88rem;
     color:var(--muted);
}
 .contact-detail svg {
     width:18px;
     height:18px;
     stroke:var(--orange);
     fill:none;
     flex-shrink:0;
}
 .contact-left-actions {
     margin-top:2.5rem;
     display:flex;
     flex-direction:column;
     gap:1rem;
}
 .tech-btn {
     position:relative;
     width:100%;
     max-width:340px;
     padding:0;
     border:none;
     background:none;
     
     font-family:var(--font-head);
     text-align:left;
}
 .tech-btn-inner {
     position:relative;
     display:flex;
     align-items:center;
     justify-content:space-between;
     padding:1rem 1.4rem;
     border-radius:4px;
     overflow:hidden;
}
 .tech-btn-inner .c {
     position:absolute;
     width:7px;
     height:7px;
     border-style:solid;
}
 .c.tl{
    top:4px;
    left:4px;
    border-width:1px 0 0 1px;
}
 .c.tr{
    top:4px;
    right:4px;
    border-width:1px 1px 0 0;
}
 .c.bl{
    bottom:4px;
    left:4px;
    border-width:0 0 1px 1px;
}
 .c.br{
    bottom:4px;
    right:4px;
    border-width:0 1px 1px 0;
}
 .tech-btn-label {
     display:flex;
     flex-direction:column;
     align-items:flex-start;
     z-index:1;
}
 .tech-btn-eye {
     font-size:0.55rem;
     letter-spacing:0.2em;
     text-transform:uppercase;
     font-family:roboto,Arial, Helvetica, sans-serif;
     font-weight:400;
     line-height:1;
     margin-bottom:0.22rem;
}
 .tech-btn-text {
     font-size:0.88rem;
     font-weight:700;
     letter-spacing:0.08em;
     text-transform:uppercase;
}
 #btnRegister .tech-btn-inner {
     background:var(--orange);
     transition:box-shadow 0.3s;
}
 #btnRegister .tech-btn-inner .c {
     border-color:rgba(255,255,255,0.4);
}
 #btnRegister .tech-btn-eye {
     color:rgba(255,255,255,0.65);
}
 #btnRegister .tech-btn-text {
     color:#fff;
}
 #btnRegister .tech-btn-inner::before {
     content:'';
     position:absolute;
     top:0;
     left:-80%;
     width:100%;
     height:100%;
     background:linear-gradient(90deg,transparent,rgba(255,255,255,0.15),transparent);
     animation:scanline 2.4s ease-in-out infinite;
}
 @keyframes scanline{
    0%{
        left:-80%
    }
    60%{
        left:120%
    }
    100%{
        left:120%
    }
}
 #btnRegister:hover .tech-btn-inner {
     box-shadow:0 0 40px rgba(255,107,26,0.55),0 0 80px rgba(255,107,26,0.2);
}
 .chevrons{
    display:flex;
    gap:3px;
    z-index:1;
}
 .chev{
    width:6px;
    height:6px;
    border-right:2px solid rgba(255,255,255,0.5);
    border-top:2px solid rgba(255,255,255,0.5);
    transform:rotate(45deg);
    transition:border-color 0.2s;
}
 #btnRegister:hover .chev{
    border-color:#fff;
}
 .login-trigger-wrap {
     max-width:340px;
     opacity:0;
     transform:translateY(10px);
     pointer-events:none;
     transition:opacity 0.4s var(--ease),transform 0.4s var(--ease);
}
 .login-trigger-wrap.visible {
     opacity:1;
     transform:translateY(0);
     pointer-events:auto;
}
 #btnLogin .tech-btn-inner {
     background:transparent;
     border:1px solid rgba(255,107,26,0.4);
     transition:border-color 0.3s,background 0.3s;
}
 #btnLogin .tech-btn-inner .c {
     border-color:rgba(255,107,26,0.35);
     transition:border-color 0.3s;
}
 #btnLogin .tech-btn-eye {
     color:rgba(255,107,26,0.65);
}
 #btnLogin .tech-btn-text {
     color:var(--orange);
}
 #btnLogin .tech-btn-inner::after {
     content:'';
     position:absolute;
     bottom:0;
     left:0;
     width:0;
     height:100%;
     background:rgba(255,107,26,0.08);
     transition:width 0.35s var(--ease);
}
 #btnLogin:hover .tech-btn-inner{
    border-color:var(--orange);
}
 #btnLogin:hover .tech-btn-inner::after{
    width:100%;
}
 #btnLogin:hover .tech-btn-inner .c{
    border-color:rgba(255,107,26,0.7);
}
 .login-arrow{
    z-index:1;
    width:28px;
    height:28px;
    border-radius:50%;
    border:1px solid rgba(255,107,26,0.4);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background 0.3s,border-color 0.3s;
}
 .login-arrow svg{
    width:13px;
    height:13px;
    stroke:var(--orange);
    fill:none;
    transition:stroke 0.3s;
}
 #btnLogin:hover .login-arrow{
    background:var(--orange);
    border-color:var(--orange);
}
 #btnLogin:hover .login-arrow svg{
    stroke:#fff;
}
 .login-card-wrap{
    max-width:340px;
    display:none;
}
 .login-card-wrap.open{
    display:block;
}
 .login-card{
    position:relative;
    background:rgba(13,13,13,0.95);
    border:1px solid rgba(255,107,26,0.28);
    border-radius:6px;
    padding:1.6rem 1.8rem;
    backdrop-filter:blur(18px);
    overflow:hidden;
    animation:card-slide-in 0.38s var(--ease) forwards;
}
 @keyframes card-slide-in{
    from{
        opacity:0;
        transform:translateY(12px) scale(0.98);
    }
    to{
        opacity:1;
        transform:none;
    }
}
 .login-card::before{
    content:'';
    position:absolute;
    top:-2px;
    left:0;
    height:3px;
    width:100%;
    background:linear-gradient(90deg,transparent,var(--orange),transparent);
    background-size:200% 100%;
    animation:runTop 0.9s linear infinite;
}
 @keyframes runTop{
    from{
        background-position:-200% 0
    }
    to{
        background-position:200% 0
    }
}
 .login-card-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:1.2rem;
}
 .login-card-title{
    font-family:var(--font-head);
    font-size:0.9rem;
    font-weight:700;
    letter-spacing:0.04em;
}
 .login-card-title span{
    color:var(--orange);
}
 .login-close-btn{
    width:24px;
    height:24px;
    background:rgba(255,255,255,0.05);
    border:1px solid var(--glass-border);
    border-radius:3px;
    color:var(--muted);
    font-size:0.75rem;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background 0.2s,color 0.2s,border-color 0.2s;
}
 .login-close-btn:hover{
    background:rgba(255,107,26,0.15);
    border-color:var(--orange);
    color:var(--orange);
}
 .login-field{
    margin-bottom:0.9rem;
}
 .login-field label{
    display:block;
    font-size:0.68rem;
    font-weight:500;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:rgba(255,255,255,0.38);
    margin-bottom:0.4rem;
}
 .login-field input{
    width:100%;
    background:rgba(255,255,255,0.04);
    border:1px solid var(--glass-border);
    border-radius:3px;
    color:var(--white);
    font-family:roboto,Arial, Helvetica, sans-serif;
    font-size:0.86rem;
    padding:0.65rem 0.85rem;
    outline:none;
    transition:border-color 0.25s,box-shadow 0.25s;
}
 .login-field input::placeholder{
    color:rgba(255,255,255,0.18);
}
 .login-field input:focus{
    border-color:rgba(255,107,26,0.6);
    box-shadow:0 0 0 3px rgba(255,107,26,0.08);
}
 .login-submit{
    width:100%;
    margin-top:0.6rem;
    padding:0.75rem;
    background:linear-gradient(90deg,#ff6b1a,#ff7f2a);
    border:none;
    border-radius:3px;
    color:#fff;
    font-family:var(--font-head);
    font-size:0.8rem;
    font-weight:700;
    letter-spacing:0.1em;
    text-transform:uppercase;
    transition:box-shadow 0.25s,transform 0.2s;
}
 .login-submit:hover{
    box-shadow:0 0 26px rgba(255,107,26,0.45);
    transform:translateY(-1px);
}
 .contact-form-wrap{
    background:var(--glass);
    border:1px solid var(--glass-border);
    border-radius:10px;
    padding:2.5rem;
    backdrop-filter:blur(10px);
    position:relative;
    overflow:hidden;
    transition:border-color 0.4s;
}
 .contact-form-wrap.form-active{
    border-color:rgba(255,107,26,0.25);
}
 .contact-form-wrap .run-top,.contact-form-wrap .run-bot{
    position:absolute;
    left:0;
    height:3px;
    width:100%;
    background:linear-gradient(90deg,transparent,var(--orange),transparent);
    background-size:200% 100%;
    opacity:0;
    pointer-events:none;
    transition:opacity 0.4s;
}
 .contact-form-wrap .run-top{
    top:0;
    animation:runTop 0.85s linear infinite;
}
 .contact-form-wrap .run-bot{
    bottom:0;
    animation:runBottom 0.85s linear infinite;
}
 @keyframes runBottom{
    from{
        background-position:200% 0
    }
    to{
        background-position:-200% 0
    }
}
 .contact-form-wrap.form-active .run-top,.contact-form-wrap.form-active .run-bot{
    opacity:1;
}
 .form-group{
    margin-bottom:1.4rem;
}
 .form-group label{
    display:block;
    font-size:0.78rem;
    font-weight:500;
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:rgba(255,255,255,0.5);
    margin-bottom:0.5rem;
}
 .form-group input,.form-group textarea{
    width:100%;
    background:rgba(255,255,255,0.04);
    border:1px solid var(--glass-border);
    border-radius:4px;
    color:var(--white);
    font-family:roboto,Arial, Helvetica, sans-serif;
    font-size:0.9rem;
    padding:0.8rem 1rem;
    outline:none;
    transition:border-color 0.25s,box-shadow 0.25s;
}
 .form-group input::placeholder,.form-group textarea::placeholder{
    color:rgba(255,255,255,0.2);
}
 .form-group input:focus,.form-group textarea:focus{
    border-color:rgba(255,107,26,0.6);
    box-shadow:0 0 0 3px rgba(255,107,26,0.08);
}
 .form-group textarea{
    height:120px;
    resize:vertical;
}
 .form-submit{
    width:100%;
    background:var(--orange);
    color:#fff;
    border:none;
    border-radius:4px;
    padding:0.9rem;
    font-size:0.9rem;
    font-weight:500;
    letter-spacing:0.06em;
    text-transform:uppercase;
    transition:background 0.25s,box-shadow 0.25s,transform 0.2s;
    margin-top:0.5rem;
}
 .form-submit:hover{
    background:#e55a0f;
    box-shadow:0 0 30px rgba(255,107,26,0.35);
    transform:translateY(-1px);
}
.password-wrap{
  position:relative;
  display:flex;
  align-items:center;
}

.password-wrap input{
  width:100%;
  padding-right:40px;
}

.toggle-pass{
  position:absolute;
  right:10px;
  cursor:pointer;
  display:flex;
  align-items:center;
}
/* FOOTER */
 footer{
    border-top:1px solid var(--glass-border);
    padding:3rem 0;
}
 .footer-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:1.5rem;
}
 .footer-brand{
    font-family:var(--font-head);
    font-size:0.95rem;
    font-weight:700;
}
 .footer-brand span{
    color:var(--orange);
}
 .footer-email{
    font-size:0.83rem;
    color:var(--muted);
    transition:color 0.25s;
}
 .footer-email:hover{
    color:var(--orange);
}
 .footer-socials{
    display:flex;
    gap:0.8rem;
}
 .social-btn{
    width:36px;
    height:36px;
    border-radius:4px;
    border:1px solid var(--glass-border);
    background:var(--glass);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:border-color 0.25s,background 0.25s;
}
 .social-btn:hover{
    border-color:var(--orange);
    background:rgba(255,107,26,0.1);
}
 .social-btn svg{
    width:16px;
    height:16px;
    stroke:var(--muted);
    fill:none;
    transition:stroke 0.25s;
}
 .social-btn:hover svg{
    stroke:var(--orange);
}
 .footer-copy{
    font-size:0.75rem;
    color:rgba(255,255,255,0.25);
    width:100%;
    text-align:center;
    padding-top:1.5rem;
    border-top:1px solid var(--glass-border);
    margin-top:1rem;
}
.footer-brand img{
  height:50px;
  width:auto;
  display:block;
}
.footer-brand{
  display:flex;
  align-items:center;
  gap:10px;
}

/* RESPONSIVE */
 @media(max-width:768px){
     .hamburger{
        display:flex;
    }
     .nav-links{
        position:fixed;
        top:0;
        right:-100%;
        width:75vw;
        height:100vh;
        flex-direction:column;
        justify-content:center;
        gap:2rem;
        background:rgba(15,15,15,0.97);
        backdrop-filter:blur(20px);
        border-left:1px solid var(--glass-border);
        padding:2rem;
        transition:right 0.4s var(--ease);
        z-index:999;
    }
     .nav-links.open{
        right:0;
    }
     .nav-links a{
        font-size:1.1rem;
    }
     .hero-inner{
        grid-template-columns:1fr;
        gap:3rem;
    }
     .hero-visual{
        order:-1;
    }
     .cube-scene{
        width:220px;
        height:220px;
    }
     .about-grid{
        grid-template-columns:1fr;
    }
     .services-grid{
        grid-template-columns:1fr;
    }
     .pipeline-steps{
        grid-template-columns:repeat(2,1fr);
        gap:2rem;
    }
     .pipeline-steps::before{
        display:none;
    }
     .community-layout{
        grid-template-columns:1fr;
    }
     .contact-wrap{
        grid-template-columns:1fr;
        gap:3rem;
    }
     .footer-inner{
        flex-direction:column;
        align-items:flex-start;
    }
     .tech-btn{
        max-width:100%;
    }
     .login-trigger-wrap,.login-card-wrap{
        max-width:100%;
    }
}
 @media(max-width:480px){
     .hero-stats{
        flex-wrap:wrap;
        gap:1rem;
    }
     .pipeline-steps{
        grid-template-columns:1fr;
    }
}
/* ============================================================ CUBON — Rubik's Cube Chatbot ============================================================ */
 #CUBON-wrapper{
    position:fixed;
    bottom:32px;
    right:32px;
    z-index:8000;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:10px;
    pointer-events:none;
}
 #CUBON-wrapper>*{
    pointer-events:auto;
}
 .CUBON-label{
    font-family: 'Exo 2', roboto,Arial, Helvetica, sans-serif;
    font-size:0.875rem;
    font-weight:800;
    letter-spacing:0.18em;
    text-transform:uppercase;
    color:var(--orange);
    text-align:center;
    animation:label-bob 3s ease-in-out infinite;
    text-shadow:0 0 10px rgba(255, 242, 55, 0.886);
}
 @keyframes label-bob{
    0%,100%{
        transform:translateY(0)
    }
    50%{
        transform:translateY(-4px)
    }
}
 .CUBON-scene{
    width:72px;
    height:72px;
    perspective:320px;
    
    animation:CUBON-float 4s ease-in-out infinite;
    filter:drop-shadow(0 0 14px rgba(255,107,26,0.5));
    transition:filter 0.3s;
    position:relative;
}
 .CUBON-scene:hover{
    filter:drop-shadow(0 0 28px rgba(255,107,26,0.9));
}
 @keyframes CUBON-float{
    0%,100%{
        transform:translateY(0) rotate(0deg)
    }
    25%{
        transform:translateY(-10px) rotate(2deg)
    }
    75%{
        transform:translateY(-5px) rotate(-2deg)
    }
}
 .CUBON-cube{
    width:72px;
    height:72px;
    position:relative;
    transform-style: preserve-3d;
    transform: rotateY(-18deg) rotateX(-18deg);/* keep slight X tilt */
    animation: cube-wiggle 2.5s ease-in-out infinite alternate;
}

@keyframes cube-wiggle {
    0% {
        transform: rotateY(-18deg) rotateX(-10deg); 
    }
     25% {
        transform: rotateY(-18deg) rotateX(-10deg); 
    }
    50% {
        transform: rotateY(-108deg) rotateZ(-100deg);  
    }
    100% {
        transform: rotateY(-360deg) rotateX(-180deg);
    }
}
 .CUBON-scene:hover .CUBON-cube{
    animation-play-state:paused;
}
 .sw-face{
    position:absolute;
    width:72px;
    height:72px;
    border-radius:5px;
    border:2px solid rgba(255,107,26,0.55);
    display:grid;
    grid-template-columns:repeat(3,1fr);
    grid-template-rows:repeat(3,1fr);
    gap:2px;
    padding:4px;
    background:#000000;
}
 .sw-face.sf{
    transform:translateZ(36px);
}
 .sw-face.sb{
    transform:rotateY(180deg) translateZ(36px);
}
 .sw-face.sl{
    transform:rotateY(-90deg) translateZ(36px);
}
 .sw-face.sr{
    transform:rotateY(90deg) translateZ(36px);
}
 .sw-face.st{
    transform:rotateX(90deg) translateZ(36px);
}
 .sw-face.sbo{
    transform:rotateX(-90deg) translateZ(36px);
}
 .st2{
    border-radius:2px;
    transition:background 0.4s;
}
/* front face — orange pattern */
 .sw-face.sf .st2:nth-child(1){
    background:#FF6B1A
}
.sw-face.sf .st2:nth-child(2){
    background:#FF6B1A
}
.sw-face.sf .st2:nth-child(3){
    background:#2a1a0a
}
.sw-face.sf .st2:nth-child(4){
    background:#2a1a0a
}
.sw-face.sf .st2:nth-child(5){
    background:#FF6B1A
}
.sw-face.sf .st2:nth-child(6){
    background:#FF6B1A
}
.sw-face.sf .st2:nth-child(7){
    background:#222
}
.sw-face.sf .st2:nth-child(8){
    background:#FF6B1A
}
.sw-face.sf .st2:nth-child(9){
    background:#FF6B1A
}
/* right — blue */
 .sw-face.sr .st2:nth-child(odd){
    background:#FF6B1A
}
.sw-face.sr .st2:nth-child(even){
    background:#0d1a2a
}
/* left — green */
 .sw-face.sl .st2:nth-child(odd){
    background:#FF6B1A
}
.sw-face.sl .st2:nth-child(even){
    background:#0d1a0d
}
/* top — yellow */
 .sw-face.st .st2:nth-child(odd){
    background:#F9A825
}
.sw-face.st .st2:nth-child(even){
    background:#2a1f00
}
/* back — purple */
 .sw-face.sb .st2:nth-child(odd){
    background:#000000
}
.sw-face.sb .st2:nth-child(even){
    background:#FF6B1A
}
/* bottom — red */
 .sw-face.sbo .st2:nth-child(odd){
    background:#150a04
}
.sw-face.sbo .st2:nth-child(even){
    background:#FF6B1A
}
/* front face expression overlay */
 .sw-face.sf{
    display:flex;
    align-items:center;
    justify-content:center;
}
 .sw-tiles{
    position:absolute;
    inset:0;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    grid-template-rows:repeat(3,1fr);
    gap:2px;
    padding:4px;
    pointer-events:none;
}
 .sw-expr{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    z-index:2;
    pointer-events:none;
}
 .sw-brows{
    display:flex;
    gap:10px;
    margin-bottom:0;
}
 .sw-brow{
    width:8px;
    height:2px;
    background:#fff;
    border-radius:2px;
    transition:transform 0.35s;
    box-shadow:0 0 4px rgba(255,107,26,0.7);
}
 .sw-eyes{
    display:flex;
    gap:11px;
}
 .sw-eye{
    width:9px;
    height:9px;
    background:#fff;
    border-radius:50%;
    position:relative;
    overflow:hidden;
    box-shadow:0 0 5px rgba(255,107,26,0.9);
    animation:sw-blink 5s ease-in-out infinite;
}
 .sw-eye:nth-child(2){
    animation-delay:0.1s;
}
 @keyframes sw-blink{
    0%,93%,100%{
        transform:scaleY(1)
    }
    95%{
        transform:scaleY(0.08)
    }
}
 .sw-eye::after{
    content:'';
    position:absolute;
    width:4px;
    height:4px;
    background:#0f0f0f;
    border-radius:50%;
    top:2px;
    left:2px;
    transition:transform 0.3s;
}
 .sw-mouth{
    width:22px;
    height:10px;
    border-radius:0 0 11px 11px;
    border:2px solid #fff;
    border-top:none;
    transition:all 0.4s var(--ease);
    margin-top:1px;
    box-shadow:0 2px 5px rgba(255,107,26,0.5);
}
/* Expressions */
 .CUBON-cube.happy .sw-brow:first-child{
    transform:rotate(-10deg)
}
 .CUBON-cube.happy .sw-brow:last-child{
    transform:rotate(10deg)
}
 .CUBON-cube.happy .sw-mouth{
    border-radius:0 0 11px 11px;
    border-top:none;
    width:22px;
    height:10px;
}
 .CUBON-cube.thinking .sw-brow:first-child{
    transform:translateY(2px) rotate(18deg)
}
 .CUBON-cube.thinking .sw-brow:last-child{
    transform:translateY(-1px) rotate(-4deg)
}
 .CUBON-cube.thinking .sw-mouth{
    border-radius:0;
    border:none;
    border-bottom:2px solid #fff;
    width:14px;
    height:0;
    margin-left:3px;
}
 .CUBON-cube.surprised .sw-brow{
    transform:translateY(-3px) scaleX(1.15);
}
 .CUBON-cube.surprised .sw-mouth{
    border-radius:50%;
    width:11px;
    height:11px;
    border:2px solid #fff;
}
 .CUBON-cube.cool .sw-brow:first-child{
    transform:translateY(1px) scaleX(0.9)
}
 .CUBON-cube.cool .sw-brow:last-child{
    transform:translateY(1px)
}
 .CUBON-cube.cool .sw-mouth{
    border-radius:11px 11px 0 0;
    border:2px solid #fff;
    border-bottom:none;
    height:8px;
}
 .CUBON-cube.excited .sw-brow{
    transform:translateY(-4px) rotate(0deg);
}
 .CUBON-cube.excited .sw-mouth{
    width:26px;
    height:12px;
}
 .CUBON-cube.excited .sw-eye{
    background:#ffe082;
    box-shadow:0 0 8px rgba(255,224,130,0.9);
}
/* Notification dot */
 .CUBON-notif{
    position:absolute;
    top:-3px;
    right:-3px;
    width:12px;
    height:12px;
    background:#22c55e;
    border-radius:50%;
    border:2px solid #0f0f0f;
    animation:notif-pulse 1.8s ease-in-out infinite;
    display:none;
    z-index:10;
}
 .CUBON-notif.show{
    display:block;
}
 @keyframes notif-pulse{
    0%,100%{
        box-shadow:0 0 0 0 rgba(34,197,94,0.6)
    }
    50%{
        box-shadow:0 0 0 6px rgba(34,197,94,0)
    }
}
/* CHAT PANEL */
 .CUBON-panel{
    width:340px;
    background:rgba(11,11,11,0.97);
    border:1px solid rgba(255,107,26,0.28);
    border-radius:14px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    box-shadow:0 28px 80px rgba(0,0,0,0.85),0 0 50px rgba(255,107,26,0.1);
    backdrop-filter:blur(22px);
    max-height:0;
    opacity:0;
    pointer-events:none;
    transform:translateY(20px) scale(0.95);
    transform-origin:bottom right;
    transition:max-height 0.45s var(--ease),opacity 0.35s var(--ease),transform 0.4s var(--ease);
}
 .CUBON-panel.open{
    max-height:540px;
    opacity:1;
    pointer-events:auto;
    transform:none;
}
 .CUBON-panel-head{
    display:flex;
    align-items:center;
    gap:10px;
    padding:13px 15px;
    background:rgba(255,107,26,0.07);
    border-bottom:1px solid rgba(255,107,26,0.16);
    position:relative;
}
/* Mini cube in header */
 .sw-mini-scene{
    width:30px;
    height:30px;
    perspective:110px;
    flex-shrink:0;
}
 .sw-mini-cube{
    width:30px;
    height:30px;
    transform-style:preserve-3d;
    transform:rotateX(-18deg) rotateY(30deg);
    animation:sw-spin 7s linear infinite;
    position:relative;
}
 .sw-mini-face{
    position:absolute;
    width:30px;
    height:30px;
    border-radius:3px;
    border:1px solid rgba(255,107,26,0.45);
    display:grid;
    grid-template-columns:repeat(3,1fr);
    grid-template-rows:repeat(3,1fr);
    gap:1px;
    padding:2px;
    background:#111;
}
 .sw-mini-face.mf{
    transform:translateZ(15px)
}
.sw-mini-face.mb{
    transform:rotateY(180deg) translateZ(15px)
}
.sw-mini-face.ml{
    transform:rotateY(-90deg) translateZ(15px)
}
.sw-mini-face.mr{
    transform:rotateY(90deg) translateZ(15px)
}
.sw-mini-face.mt{
    transform:rotateX(90deg) translateZ(15px)
}
.sw-mini-face.mbo{
    transform:rotateX(-90deg) translateZ(15px)
}
 .sw-mini-face .st2{
    border-radius:1px;
}
 .sw-mini-face.mf .st2:nth-child(odd){
    background:#FF6B1A
}
.sw-mini-face.mf .st2:nth-child(even){
    background:#ffffff
}
 .sw-mini-face.mr .st2:nth-child(odd){
    background:#FF6B1A
}
.sw-mini-face.mr .st2:nth-child(even){
    background:#ffffff
}
 .sw-mini-face.ml .st2:nth-child(odd){
    background:#FF6B1A
}
.sw-mini-face.ml .st2:nth-child(even){
    background:#ffffff
}
 .sw-mini-face.mt .st2:nth-child(odd){
    background:#F9A825
}
.sw-mini-face.mt .st2:nth-child(even){
    background:#ffffff
}
 .sw-mini-face.mb .st2:nth-child(odd){
    background:#FF6B1A
}
.sw-mini-face.mb .st2:nth-child(even){
    background:#ffffff
}
 .sw-mini-face.mbo .st2:nth-child(odd){
    background:#FF6B1A
}
.sw-mini-face.mbo .st2:nth-child(even){
    background:#ffffff
}
 .CUBON-head-info{
    flex:1;
}
 .CUBON-head-name{
    font-family:var(--font-head);
    font-size:0.9rem;
    font-weight:700;
    color:var(--orange);
    letter-spacing:0.07em;
}
 .CUBON-head-status{
    font-size:0.65rem;
    color:rgba(255,255,255,0.38);
    display:flex;
    align-items:center;
    gap:5px;
    margin-top:1px;
}
 .CUBON-head-status::before{
    content:'';
    width:6px;
    height:6px;
    background:#FF6B1A;
    border-radius:50%;
    box-shadow:0 0 6px #FF6B1A;
    animation:status-pulse 2s ease-in-out infinite;
    flex-shrink:0;
}
 @keyframes status-pulse{
    0%,100%{
        box-shadow:0 0 6px #FF6B1A
    }
    50%{
        box-shadow:0 0 14px #FF6B1A
    }
}
 .CUBON-x{
    width:25px;
    height:25px;
    background:rgba(255,255,255,0.05);
    border:1px solid var(--glass-border);
    border-radius:4px;
    color:var(--muted);
    font-size:0.72rem;
    display:flex;
    align-items:center;
    justify-content:center;
    
    transition:background 0.2s,color 0.2s,border-color 0.2s;
}
 .CUBON-x:hover{
    background:rgba(255,107,26,0.15);
    border-color:var(--orange);
    color:var(--orange);
}
 .CUBON-messages{
    flex:1;
    padding:14px;
    overflow-y:auto;
    display:flex;
    flex-direction:column;
    gap:9px;
    min-height:260px;
    max-height:320px;
    scrollbar-width:thin;
    scrollbar-color:rgba(255,107,26,0.25) transparent;
}
 .CUBON-messages::-webkit-scrollbar{
    width:3px;
}
.CUBON-messages::-webkit-scrollbar-thumb{
    background:rgba(255,107,26,0.3);
    border-radius:4px;
}
 .sw-msg{
    display:flex;
    gap:7px;
    animation:msg-in 0.28s var(--ease) forwards;
}
 @keyframes msg-in{
    from{
        opacity:0;
        transform:translateY(7px)
    }
    to{
        opacity:1;
        transform:none
    }
}
 .sw-msg.bot{
    justify-content:flex-start;
}
.sw-msg.user{
    justify-content:flex-end;
}
 .sw-bubble{
    max-width:82%;
    padding:8px 12px;
    border-radius:12px;
    font-size:0.8rem;
    line-height:1.55;
}
 .sw-msg.bot .sw-bubble{
    background:rgba(255,107,26,0.09);
    border:1px solid rgba(255,107,26,0.2);
    color:rgba(255,255,255,0.85);
    border-radius:3px 12px 12px 12px;
}
 .sw-msg.user .sw-bubble{
    background:rgba(255,255,255,0.06);
    border:1px solid var(--glass-border);
    color:var(--white);
    border-radius:12px 3px 12px 12px;
}
 .sw-typing{
    display:flex;
    gap:4px;
    padding:9px 13px;
    background:rgba(255,107,26,0.08);
    border:1px solid rgba(255,107,26,0.17);
    border-radius:3px 12px 12px 12px;
    width:fit-content;
}
 .sw-typing span{
    width:5px;
    height:5px;
    background:var(--orange);
    border-radius:50%;
    animation:typing-dot 1.2s ease-in-out infinite;
}
 .sw-typing span:nth-child(2){
    animation-delay:0.2s
}
.sw-typing span:nth-child(3){
    animation-delay:0.4s
}
 @keyframes typing-dot{
    0%,60%,100%{
        transform:translateY(0);
        opacity:0.4
    }
    30%{
        transform:translateY(-5px);
        opacity:1
    }
}
 .CUBON-input-row{
    display:flex;
    gap:7px;
    padding:11px 13px;
    border-top:1px solid rgba(255,107,26,0.12);
    background:rgba(255,255,255,0.02);
}
 .CUBON-input{
    flex:1;
    background:rgba(255,255,255,0.05);
    border:1px solid var(--glass-border);
    border-radius:8px;
    color:var(--white);
    font-family:roboto,Arial, Helvetica, sans-serif;
    font-size:0.8rem;
    padding:8px 11px;
    outline:none;
    transition:border-color 0.25s,box-shadow 0.25s;
    resize:none;
    line-height:1.4;
}
 .CUBON-input::placeholder{
    color:rgba(255,255,255,0.18);
}
 .CUBON-input:focus{
    border-color:rgba(255,107,26,0.5);
    box-shadow:0 0 0 3px rgba(255,107,26,0.07);
}
 .CUBON-send{
    width:34px;
    height:34px;
    background:var(--orange);
    border:none;
    border-radius:7px;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    
    flex-shrink:0;
    transition:background 0.25s,box-shadow 0.25s,transform 0.15s;
    align-self:flex-end;
}
 .CUBON-send:hover{
    background:#e55a0f;
    box-shadow:0 0 16px rgba(255,107,26,0.4);
    transform:scale(1.06);
}
 .CUBON-send svg{
    width:14px;
    height:14px;
    stroke:#fff;
    fill:none;
}
 .CUBON-quick-btns{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    padding:0 13px 10px;
}
 .sw-qbtn{
    font-size:0.68rem;
    padding:4px 9px;
    background:rgba(255,107,26,0.08);
    border:1px solid rgba(255,107,26,0.22);
    border-radius:20px;
    color:rgba(255,107,26,0.9);
    
    transition:background 0.2s,color 0.2s;
    font-family:roboto,Arial, Helvetica, sans-serif;
    white-space:nowrap;
}
 .sw-qbtn:hover{
    background:rgba(255,107,26,0.18);
    color:#fff;
}
 @media (max-width:480px) {
    #CUBON-wrapper{
        bottom:14px;
        right:14px;
    }
     .CUBON-panel{
        width:calc(100vw - 28px);
    }
}

/* ────────────── DEFAULT ARROW ────────────── */
*,
*::before,
*::after,
svg,
svg * {
  cursor: url('arrowhead-rounded-outline (1).png'), auto !important;
}

/* ────────────── POINTER HAND FOR CLICKABLE ELEMENTS ────────────── */
a,
button,
input[type="button"],
input[type="submit"],
label,
.nav-cta,
.social-btn,
.tech-btn,
.stack-card,
.pill,
[onclick] {
  cursor: url('hand-pointer.png'), pointer !important;
}

/* ────────────── I-BEAM FOR TEXT INPUTS ────────────── */
input,
textarea,
[contenteditable="true"] {
  cursor: url('ibeam.png'), text !important;
}