/* =============================================
   SOFTTEAM.IO — Dark Acid Lime Design System
   ============================================= */

:root {
  --bg:          #080C10;
  --bg2:         #0D1117;
  --bg-card:     #0F1923;
  --bg-card-h:   #141F2E;
  --accent:      #84CC16;
  --accent2:     #A3E635;
  --accent-glow: rgba(132,204,22,0.10);
  --accent-glow2:rgba(132,204,22,0.18);
  --text:        #F9FAFB;
  --text2:       #9CA3AF;
  --text-muted:  #6B7280;
  --border:      rgba(132,204,22,0.18);
  --border-sub:  rgba(255,255,255,0.07);
  --radius:      12px;
  --radius-sm:   8px;
  --maxw:        1100px;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}

/* ---- NAV ---- */
nav{
  position:sticky;top:0;z-index:100;
  background:rgba(8,12,16,0.90);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border-sub);
  padding:0 24px;
  height:64px;
  display:flex;align-items:center;
}
.nav-inner{
  max-width:var(--maxw);width:100%;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;flex-shrink:0;}
.logo-mark{
  width:34px;height:34px;background:var(--accent);border-radius:7px;
  display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:18px;color:#080C10;letter-spacing:-0.5px;
  flex-shrink:0;
}
.nav-links{display:flex;align-items:center;gap:28px;list-style:none;}
.nav-links a{color:var(--text2);font-size:14px;font-weight:500;transition:color .2s;}
.nav-links a:hover{color:var(--text);}

.lang-sw{display:flex;gap:4px;align-items:center;}
.lang-sw a{
  font-size:12px;font-weight:700;letter-spacing:.04em;
  color:var(--text-muted);padding:3px 9px;border-radius:5px;
  transition:all .2s;
}
.lang-sw a:hover,.lang-sw a.active{color:var(--accent);background:var(--accent-glow);}

.btn-nav{
  background:var(--accent)!important;color:#080C10!important;
  font-weight:700!important;font-size:13px!important;
  padding:8px 18px!important;border-radius:var(--radius-sm)!important;
  transition:background .2s!important;white-space:nowrap;
}
.btn-nav:hover{background:var(--accent2)!important;}

/* Hamburger */
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;}
.hamburger span{width:22px;height:2px;background:var(--text);border-radius:2px;transition:all .3s;display:block;}
.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);}

/* ---- LAYOUT ---- */
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
section{padding:80px 0;}
section.alt{background:var(--bg2);}

/* ---- TYPOGRAPHY ---- */
.tag{
  display:inline-block;font-size:11px;font-weight:700;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--accent);margin-bottom:14px;
}
h2.title{font-size:clamp(28px,4vw,40px);font-weight:800;line-height:1.12;letter-spacing:-.02em;margin-bottom:14px;}
p.sub{font-size:17px;color:var(--text2);max-width:580px;line-height:1.7;margin-bottom:0;}

/* ---- HERO ---- */
#hero{
  padding:110px 0 90px;position:relative;overflow:hidden;
  background:var(--bg);
}
#hero::before{
  content:'';position:absolute;top:-150px;left:50%;transform:translateX(-50%);
  width:800px;height:800px;
  background:radial-gradient(circle,rgba(132,204,22,0.06) 0%,transparent 65%);
  pointer-events:none;
}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--accent-glow);border:1px solid var(--border);
  border-radius:100px;padding:6px 16px;
  font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--accent);margin-bottom:28px;
}
.hero-badge::before{content:'';width:6px;height:6px;background:var(--accent);border-radius:50%;flex-shrink:0;}
h1{
  font-size:clamp(36px,5.5vw,62px);font-weight:800;line-height:1.08;
  letter-spacing:-.025em;margin-bottom:24px;max-width:740px;
}
h1 .hl{color:var(--accent);}
.hero-sub{font-size:18px;color:var(--text2);max-width:560px;line-height:1.7;margin-bottom:40px;}
.btn-group{display:flex;gap:14px;flex-wrap:wrap;}

/* ---- BUTTONS ---- */
.btn-primary{
  background:var(--accent);color:#080C10;
  font-weight:700;font-size:15px;padding:13px 26px;
  border-radius:var(--radius-sm);border:none;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;
  transition:background .2s,transform .1s;
}
.btn-primary:hover{background:var(--accent2);transform:translateY(-1px);}
.btn-secondary{
  background:transparent;color:var(--text);
  font-weight:600;font-size:15px;padding:13px 26px;
  border-radius:var(--radius-sm);border:1px solid var(--border-sub);cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;
  transition:all .2s;
}
.btn-secondary:hover{border-color:var(--border);background:var(--accent-glow);}

/* ---- CARDS 3 ---- */
.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;}
.card{
  background:var(--bg-card);border:1px solid var(--border-sub);
  border-radius:var(--radius);padding:28px;
  transition:border-color .2s,background .2s;
}
.card:hover{border-color:var(--border);background:var(--bg-card-h);}
.card-icon{
  width:46px;height:46px;background:var(--accent-glow);
  border:1px solid var(--border);border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:20px;margin-bottom:18px;
}
.card h3{font-size:17px;font-weight:700;margin-bottom:10px;}
.card p{font-size:14px;color:var(--text2);line-height:1.6;}

/* ---- ENGAGEMENT GRID ---- */
.engage-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px;}
.engage-card{
  background:var(--bg-card);border:1px solid var(--border-sub);
  border-radius:var(--radius);padding:32px;
}
.engage-card.feat{
  border-color:var(--border);
  background:linear-gradient(135deg,rgba(132,204,22,0.05) 0%,var(--bg-card) 100%);
}
.engage-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;}
.engage-card h3{font-size:20px;font-weight:800;margin-bottom:16px;}
.engage-card ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
.engage-card li{font-size:14px;color:var(--text2);display:flex;align-items:flex-start;gap:10px;}
.engage-card li::before{content:'→';color:var(--accent);flex-shrink:0;}

.quote-bar{
  margin-top:28px;padding:22px 28px;
  background:var(--bg-card);border:1px solid var(--border-sub);
  border-left:3px solid var(--accent);border-radius:var(--radius-sm);
  font-size:15px;color:var(--text2);font-style:italic;line-height:1.65;
}

/* ---- PILLARS ---- */
.pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:44px;}
.pillar{
  display:flex;align-items:flex-start;gap:14px;
  padding:22px;background:var(--bg-card);
  border:1px solid var(--border-sub);border-radius:var(--radius-sm);
}
.pillar-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;flex-shrink:0;margin-top:6px;}
.pillar p{font-size:14px;color:var(--text2);line-height:1.55;}
.pillar p strong{color:var(--text);}

/* ---- INTEREST LIST ---- */
.interest-list{margin-top:44px;display:flex;flex-direction:column;gap:14px;}
.int-item{
  display:flex;align-items:flex-start;gap:18px;
  padding:20px 24px;background:var(--bg-card);
  border:1px solid var(--border-sub);border-radius:var(--radius-sm);
  transition:border-color .2s;
}
.int-item:hover{border-color:var(--border);}
.int-num{font-size:13px;font-weight:700;color:var(--accent);flex-shrink:0;padding-top:2px;min-width:24px;}
.int-item h4{font-size:16px;font-weight:700;margin-bottom:4px;}
.int-item p{font-size:14px;color:var(--text2);line-height:1.55;}

/* ---- PORTFOLIO BOX ---- */
.port-box{
  background:var(--bg-card);border:1px solid var(--border-sub);
  border-radius:var(--radius);padding:36px;margin-top:44px;
}
.port-box p{font-size:16px;color:var(--text2);line-height:1.7;max-width:720px;}
.port-box .port-note{margin-top:14px;font-size:13px;color:var(--text-muted);font-style:italic;}

/* ---- PERFORMANCE ---- */
.perf-block{
  margin-top:20px;background:var(--bg-card);
  border:1px solid var(--border);border-radius:var(--radius);
  padding:40px;position:relative;overflow:hidden;
}
.perf-block::before{
  content:'';position:absolute;top:-80px;right:-80px;
  width:260px;height:260px;
  background:radial-gradient(circle,rgba(132,204,22,0.08),transparent 65%);
  pointer-events:none;
}
.perf-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:32px;gap:16px;flex-wrap:wrap;}
.perf-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;}
.perf-updated{font-size:13px;color:var(--text-muted);}
.perf-badge{
  display:inline-flex;align-items:center;gap:7px;
  background:var(--accent-glow);border:1px solid var(--border);
  border-radius:100px;padding:6px 14px;
  font-size:12px;font-weight:600;color:var(--accent);white-space:nowrap;
}
.perf-badge::before{
  content:'';width:6px;height:6px;background:var(--accent);border-radius:50%;
  animation:blink 2s infinite;
}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:.25;}}
.metric-val{font-size:58px;font-weight:800;color:var(--accent);line-height:1;letter-spacing:-.03em;margin-bottom:4px;}
.metric-lbl{font-size:15px;color:var(--text2);}
.metric-period{font-size:13px;color:var(--text-muted);margin-top:3px;}
.perf-disclaimer{
  margin-top:28px;padding-top:20px;border-top:1px solid var(--border-sub);
  font-size:12px;color:var(--text-muted);line-height:1.55;
}

/* ---- TIMELINE ---- */
.timeline{margin-top:44px;position:relative;}
.timeline::before{
  content:'';position:absolute;left:72px;top:0;bottom:0;width:1px;
  background:linear-gradient(to bottom,transparent,var(--border) 10%,var(--border) 90%,transparent);
}
.tl-item{display:grid;grid-template-columns:72px 1fr;gap:0;padding:14px 0;position:relative;}
.tl-dot{
  position:absolute;left:66px;top:22px;
  width:12px;height:12px;background:var(--bg);
  border:2px solid var(--accent);border-radius:50%;z-index:1;
}
.tl-year{font-size:12px;font-weight:700;color:var(--accent);text-align:right;padding-top:20px;padding-right:8px;line-height:1.2;}
.tl-content{padding-left:28px;}
.tl-content h3{font-size:16px;font-weight:700;margin-bottom:5px;}
.tl-content p{font-size:14px;color:var(--text2);line-height:1.55;}

/* ---- CONTACT GRID ---- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px;}
.contact-card{
  background:var(--bg-card);border:1px solid var(--border-sub);
  border-radius:var(--radius);padding:34px;
  transition:border-color .2s;
}
.contact-card:hover{border-color:var(--border);}
.contact-card h3{font-size:21px;font-weight:800;margin-bottom:10px;}
.contact-card p{font-size:15px;color:var(--text2);line-height:1.65;margin-bottom:24px;}

/* ---- FOOTER ---- */
footer{background:var(--bg2);border-top:1px solid var(--border-sub);padding:48px 0 28px;}
.foot-inner{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
.foot-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px;gap:32px;flex-wrap:wrap;}
.foot-links{display:flex;gap:20px;list-style:none;flex-wrap:wrap;}
.foot-links a{font-size:13px;color:var(--text-muted);transition:color .2s;}
.foot-links a:hover{color:var(--text2);}
.foot-legal{
  border-top:1px solid var(--border-sub);padding-top:20px;
  font-size:12px;color:var(--text-muted);line-height:1.65;
}
.foot-legal strong{color:var(--text2);}
.foot-bottom{
  margin-top:16px;display:flex;justify-content:space-between;
  align-items:center;gap:12px;flex-wrap:wrap;
}
.foot-copy{font-size:12px;color:var(--text-muted);}

/* ---- PRIVACY PAGE ---- */
.priv-wrap{max-width:780px;margin:0 auto;padding:72px 24px;}
.priv-wrap h1{font-size:clamp(28px,4vw,40px);font-weight:800;margin-bottom:8px;}
.priv-meta{font-size:13px;color:var(--text-muted);margin-bottom:48px;}
.priv-wrap h2{font-size:20px;font-weight:700;margin:36px 0 12px;color:var(--text);}
.priv-wrap p,.priv-wrap li{font-size:15px;color:var(--text2);line-height:1.7;margin-bottom:12px;}
.priv-wrap ul{padding-left:20px;margin-bottom:16px;}
.priv-wrap .entity-box{
  background:var(--bg-card);border:1px solid var(--border);
  border-radius:var(--radius-sm);padding:20px 24px;margin:16px 0;
}
.priv-wrap .entity-box p{margin-bottom:4px;font-size:14px;}
.priv-wrap .entity-box strong{color:var(--text);}

/* ---- RESPONSIVE ---- */
@media(max-width:960px){
  .cards-3{grid-template-columns:1fr 1fr;}
  .engage-grid{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
  .pillars{grid-template-columns:1fr;}
}
@media(max-width:768px){
  .nav-links{
    display:none;position:fixed;top:64px;left:0;right:0;
    background:var(--bg2);border-bottom:1px solid var(--border-sub);
    flex-direction:column;padding:24px;gap:18px;z-index:99;
  }
  .nav-links.open{display:flex;}
  .hamburger{display:flex;}
  .cards-3{grid-template-columns:1fr;}
  section{padding:60px 0;}
  h2.title{font-size:26px;}
  .hero-sub{font-size:16px;}
  .metric-val{font-size:44px;}
  .foot-top{flex-direction:column;gap:20px;}
  .perf-head{flex-direction:column;}
}
@media(max-width:480px){
  .timeline::before{left:52px;}
  .tl-dot{left:46px;}
  .tl-item{grid-template-columns:52px 1fr;}
  .timeline{font-size:13px;}
}
