/* ===== DESKIVO AI — SHARED STYLES ===== */
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;1,9..40,300&display=swap');

:root{
  --indigo:#4F46E5;
  --indigo-light:#818CF8;
  --indigo-dim:rgba(79,70,229,0.12);
  --dark:#08080F;
  --dark2:#0D0D1C;
  --dark3:#131326;
  --white:#FFFFFF;
  --muted:rgba(255,255,255,0.42);
  --border:rgba(255,255,255,0.07);
  --font-display:'Syne',sans-serif;
  --font-body:'DM Sans',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--dark);color:var(--white);font-family:var(--font-body);overflow-x:hidden;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;}

/* SCROLLBAR */
::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:var(--dark);}
::-webkit-scrollbar-thumb{background:var(--indigo);border-radius:2px;}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:22px 80px;display:flex;align-items:center;justify-content:space-between;transition:all 0.3s;}
nav.scrolled{background:rgba(8,8,15,0.94);backdrop-filter:blur(24px);border-bottom:1px solid var(--border);}
.nav-logo{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:800;font-size:20px;letter-spacing:-0.5px;color:white;}
.nav-logo-mark{width:34px;height:34px;background:var(--indigo);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.nav-links{display:flex;gap:40px;list-style:none;}
.nav-links a{color:var(--muted);font-size:14px;font-weight:400;transition:color 0.2s;letter-spacing:0.2px;}
.nav-links a:hover,.nav-links a.active{color:white;}
.nav-cta{background:var(--indigo);color:white;border:none;padding:11px 26px;border-radius:100px;font-size:14px;font-weight:500;cursor:pointer;font-family:var(--font-body);transition:all 0.22s;letter-spacing:0.2px;display:inline-block;}
.nav-cta:hover{background:#4338CA;transform:translateY(-1px);box-shadow:0 8px 24px rgba(79,70,229,0.35);}

/* BUTTONS */
.btn-primary{background:var(--indigo);color:white;border:none;padding:16px 34px;border-radius:100px;font-size:15px;font-weight:500;cursor:pointer;font-family:var(--font-body);transition:all 0.25s;display:inline-flex;align-items:center;gap:9px;letter-spacing:0.2px;}
.btn-primary:hover{background:#4338CA;transform:translateY(-2px);box-shadow:0 16px 40px rgba(79,70,229,0.38);}
.btn-secondary{background:transparent;color:white;border:1px solid rgba(255,255,255,0.13);padding:16px 34px;border-radius:100px;font-size:15px;font-weight:400;cursor:pointer;font-family:var(--font-body);transition:all 0.25s;display:inline-flex;align-items:center;gap:9px;}
.btn-secondary:hover{border-color:rgba(255,255,255,0.3);background:rgba(255,255,255,0.04);}
.btn-outline{background:transparent;color:var(--indigo-light);border:1px solid rgba(79,70,229,0.35);padding:13px 28px;border-radius:100px;font-size:14px;font-weight:500;cursor:pointer;font-family:var(--font-body);transition:all 0.22s;display:inline-flex;align-items:center;gap:8px;}
.btn-outline:hover{border-color:var(--indigo);background:var(--indigo-dim);}

/* SECTION COMMONS */
.section-label{font-size:11px;font-weight:600;color:var(--indigo-light);letter-spacing:3.5px;text-transform:uppercase;margin-bottom:18px;display:block;}
.section-title{font-family:var(--font-display);font-size:clamp(36px,4.5vw,60px);font-weight:800;letter-spacing:-2.5px;line-height:1.05;margin-bottom:22px;}
.section-sub{font-size:17px;color:var(--muted);max-width:520px;line-height:1.75;font-weight:300;}

/* PAGE HERO (inner pages) */
.page-hero{padding:160px 80px 100px;position:relative;overflow:hidden;border-bottom:1px solid var(--border);}
.page-hero-glow{position:absolute;width:600px;height:600px;background:radial-gradient(circle,rgba(79,70,229,0.14) 0%,transparent 65%);top:0;left:50%;transform:translateX(-50%);pointer-events:none;}
.page-hero h1{font-family:var(--font-display);font-size:clamp(44px,6vw,80px);font-weight:800;letter-spacing:-3px;line-height:1.0;max-width:800px;margin-bottom:24px;}
.page-hero h1 span{color:var(--indigo-light);}
.page-hero p{font-size:19px;color:var(--muted);max-width:580px;line-height:1.75;font-weight:300;}

/* FOOTER */
footer{background:var(--dark);border-top:1px solid var(--border);padding:72px 80px 40px;}
.footer-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:60px;margin-bottom:60px;}
.footer-brand p{font-size:14px;color:var(--muted);line-height:1.75;margin-bottom:20px;font-weight:300;max-width:280px;}
.footer-email{font-size:14px;color:var(--indigo-light);font-weight:500;}
.footer-col h5{font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:22px;color:rgba(255,255,255,0.3);}
.footer-col a{display:block;font-size:14px;color:rgba(255,255,255,0.38);margin-bottom:12px;transition:color 0.2s;font-weight:300;}
.footer-col a:hover{color:white;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:28px;font-size:12px;color:rgba(255,255,255,0.18);}

/* REVEAL */
.reveal{opacity:0;transform:translateY(28px);transition:all 0.75s cubic-bezier(0.16,1,0.3,1);}
.reveal.visible{opacity:1;transform:translateY(0);}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.4;transform:scale(0.75);}}

/* CHATBOT */
.chat-widget{position:fixed;bottom:32px;right:32px;z-index:500;}
.chat-window{position:absolute;bottom:76px;right:0;width:360px;background:var(--dark2);border:1px solid var(--border);border-radius:22px;overflow:hidden;display:none;box-shadow:0 32px 80px rgba(0,0,0,0.6);}
.chat-window.open{display:flex;flex-direction:column;}
.chat-hd{background:linear-gradient(135deg,#3730A3,var(--indigo));padding:18px 20px;display:flex;align-items:center;gap:13px;}
.chat-av{width:38px;height:38px;background:rgba(255,255,255,0.15);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.chat-hd-name{font-size:14px;font-weight:600;color:white;}
.chat-hd-status{font-size:11px;color:rgba(255,255,255,0.6);}
.chat-msgs{padding:20px;display:flex;flex-direction:column;gap:12px;min-height:220px;max-height:300px;overflow-y:auto;}
.msg{max-width:88%;padding:12px 16px;border-radius:14px;font-size:13px;line-height:1.55;font-weight:300;}
.msg.bot{background:var(--dark3);border:1px solid var(--border);color:rgba(255,255,255,0.8);align-self:flex-start;border-radius:5px 14px 14px 14px;}
.msg.user{background:var(--indigo);color:white;align-self:flex-end;border-radius:14px 14px 5px 14px;}
.msg.typing{display:flex;gap:5px;align-items:center;padding:14px 18px;}
.msg.typing span{width:7px;height:7px;background:var(--muted);border-radius:50%;animation:typing 1.2s ease infinite;}
.msg.typing span:nth-child(2){animation-delay:0.2s;}
.msg.typing span:nth-child(3){animation-delay:0.4s;}
@keyframes typing{0%,100%{transform:translateY(0);opacity:0.4;}50%{transform:translateY(-4px);opacity:1;}}
.chat-inp-row{padding:14px;border-top:1px solid var(--border);display:flex;gap:8px;}
.chat-inp{flex:1;background:var(--dark3);border:1px solid var(--border);border-radius:100px;padding:10px 18px;font-size:13px;color:white;font-family:var(--font-body);outline:none;}
.chat-inp::placeholder{color:rgba(255,255,255,0.2);}
.chat-inp:focus{border-color:rgba(79,70,229,0.4);}
.chat-send-btn{width:36px;height:36px;background:var(--indigo);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background 0.2s;}
.chat-send-btn:hover{background:#4338CA;}
.chat-toggle{width:58px;height:58px;background:var(--indigo);border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(79,70,229,0.5);transition:all 0.3s;position:relative;}
.chat-toggle:hover{transform:scale(1.08);box-shadow:0 12px 40px rgba(79,70,229,0.6);}
.chat-toggle-dot{position:absolute;top:10px;right:10px;width:10px;height:10px;background:#22C55E;border-radius:50%;border:2px solid var(--dark);}

/* RESPONSIVE */
@media(max-width:900px){
  nav{padding:18px 24px;}
  .nav-links{display:none;}
  .page-hero,.hero{padding-left:24px;padding-right:24px;}
  footer{padding:48px 24px 32px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px;}
}
