/* ═══════════════════════════════════════════
   BASE / RESET — Premium Light
   ═══════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
body{background:var(--base);color:var(--text);font-family:var(--font);overflow-x:hidden;line-height:1.7;font-weight:400}
::selection{background:rgba(79,70,229,0.15);color:var(--text-heading)}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--surface)}
::-webkit-scrollbar-thumb{background:var(--gradient);border-radius:3px}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit;-webkit-tap-highlight-color:transparent}
button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}

/* ─── Shared section layout ─── */
.section{padding:140px 80px;position:relative}
.section-bg{background:var(--surface);position:relative}
.section-tag{display:inline-flex;align-items:center;gap:12px;margin-bottom:24px}
.section-tag span{font-size:11px;letter-spacing:0.2em;text-transform:uppercase;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent;font-weight:600}
.section-tag::before{content:'';display:block;width:32px;height:2px;background:var(--gradient);border-radius:1px}
.section-h{font-size:clamp(36px,4.5vw,58px);font-weight:800;line-height:1.08;letter-spacing:-0.03em;color:var(--text-heading)}
.section-h .gr{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}
.section-top{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:72px}
.section-p{font-size:16px;color:var(--muted);line-height:2;font-weight:400}

/* ─── Section background decorations ─── */
#services::after{content:'';position:absolute;top:-20%;right:-15%;width:60%;height:100%;background:radial-gradient(ellipse at center,rgba(79,70,229,0.04),transparent 70%);pointer-events:none;z-index:0}
#services .section-top,#services .bento{position:relative;z-index:1}
#industries::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 60%,rgba(124,58,237,0.03),transparent 55%);pointer-events:none;z-index:0}
#industries .ind-header,#industries .ind-scroll-wrap{position:relative;z-index:1}
#about::after{content:'';position:absolute;top:10%;right:0;width:55%;height:80%;background:radial-gradient(ellipse at center,rgba(8,145,178,0.03),transparent 55%);pointer-events:none;z-index:0}
#about>*{position:relative;z-index:1}

/* ─── Buttons ─── */
.btn-primary{position:relative;background:var(--gradient);color:#fff;border:none;font-family:var(--font);font-size:13px;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;padding:16px 44px;border-radius:var(--radius-pill);cursor:pointer;transition:all .35s var(--ease);display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 20px rgba(79,70,229,0.25);overflow:hidden;z-index:1}
.btn-primary::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,#7C3AED,#4F46E5,#0891B2);opacity:0;transition:opacity .4s;z-index:-1}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 40px rgba(79,70,229,0.35)}
.btn-primary:hover::before{opacity:1}
.btn-secondary{background:var(--white);backdrop-filter:blur(12px);border:1px solid var(--border2);color:var(--text-heading);font-family:var(--font);font-size:13px;letter-spacing:0.1em;text-transform:uppercase;font-weight:600;padding:16px 44px;border-radius:var(--radius-pill);cursor:pointer;transition:all .35s var(--ease);box-shadow:var(--shadow)}
.btn-secondary:hover{border-color:var(--border);box-shadow:var(--glow-sm);transform:translateY(-3px)}

/* ─── Gradient text utility ─── */
.gr{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}

@media(max-width:1024px){
  .section{padding:100px 40px}
  .section-top{grid-template-columns:1fr;gap:24px;margin-bottom:52px}
  .section-p{max-width:680px}
  .btn-primary,.btn-secondary{padding:15px 30px}
}

@media(max-width:768px){
  .section{padding:80px 28px}
  .section-top{gap:20px;margin-bottom:44px}
  .section-h{font-size:clamp(32px,5vw,48px)}
}

@media(max-width:640px){
  html{scroll-padding-top:76px}
  body.nav-open{overflow:hidden}
  .section{padding:72px 20px}
  .section-tag{margin-bottom:18px}
  .section-tag span{font-size:10px;letter-spacing:0.16em}
  .section-tag::before{width:24px}
  .section-h{font-size:34px;line-height:1.12}
  .section-top{gap:20px;margin-bottom:36px}
  .section-p{font-size:15px;line-height:1.8}
  .btn-primary,.btn-secondary{width:100%;justify-content:center;padding:15px 18px;font-size:12px}
}

@media(max-width:375px){
  .section{padding:56px 16px}
  .section-h{font-size:28px}
  .section-p{font-size:14px}
}
