/* ==========================================================================
   ABORNTECH — home.css (index.html only)
   ========================================================================== */

/* ---- Hero ---- */
.hero{
  position:relative; overflow:hidden;
  min-height:100vh; display:flex; align-items:center;
  padding-block:calc(var(--header-h) + 3rem) 4rem;
}
.hero-bg{position:absolute; inset:0; z-index:0;}
.hero-blob{position:absolute; border-radius:50%; filter:blur(10px);}
.hero-blob-a{
  width:640px; height:640px; top:-18%; right:-12%;
  background:radial-gradient(circle, rgba(61,77,224,.16), transparent 70%);
}
.hero-blob-b{
  width:480px; height:480px; bottom:-16%; left:-10%;
  background:radial-gradient(circle, rgba(176,138,78,.14), transparent 70%);
}
.hero-grid{
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(10,10,12,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(10,10,12,.045) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse 80% 60% at 50% 30%, #000 40%, transparent 90%);
}
.hero-content{position:relative; z-index:1; max-width:880px; margin-inline:auto; text-align:center;}
.hero-title{
  font-size:clamp(2.6rem, 6vw, 5.2rem);
  letter-spacing:-.025em; line-height:1.05; margin-block:1.6rem 1.4rem;
}
.hero-title em{font-style:italic; color:var(--accent); font-weight:600;}
.hero-sub{
  font-size:clamp(1.05rem, 1.6vw, 1.2rem); color:var(--text-muted);
  max-width:600px; margin-inline:auto 2.5rem; margin-block-end:2.5rem; line-height:1.75;
}
.hero-actions{display:flex; gap:1rem; flex-wrap:wrap; justify-content:center; margin-bottom:3.5rem;}
.hero-stats{display:flex; gap:clamp(1.5rem, 5vw, 3.5rem); justify-content:center; flex-wrap:wrap;}
.stat-num{
  font-family:var(--font-display); font-weight:600; font-size:2.1rem; color:var(--ink-950);
  display:inline-flex;
}
.stat-plus{color:var(--accent);}
.stat-label{font-size:.82rem; color:var(--text-muted); font-weight:500; margin-top:.25rem;}

/* ---- Services bento ---- */
.services-bento{display:grid; grid-template-columns:repeat(4, 1fr); gap:1.4rem;}
.service-card:nth-child(4n+1){grid-column:span 2;}

@media (max-width:980px){
  .services-bento{grid-template-columns:repeat(2, 1fr);}
  .service-card:nth-child(4n+1){grid-column:span 2;}
}
@media (max-width:600px){
  .services-bento{grid-template-columns:1fr;}
  .service-card:nth-child(4n+1){grid-column:span 1;}
}

/* ---- Process rail ---- */
.process-rail{display:grid; grid-template-columns:repeat(6, 1fr); gap:1.2rem;}
.process-step{
  padding:1.8rem 1.5rem; border-radius:var(--r-lg); background:var(--surface);
  border:1px solid var(--border); position:relative;
}
.process-num{
  position:absolute; top:1.2rem; right:1.4rem;
  font-family:var(--font-display); font-weight:600; font-size:1.8rem; color:var(--ink-100);
}
.process-step .icon-lg{color:var(--accent); margin-bottom:1rem;}
.process-step h3{font-size:1rem; margin-bottom:.5rem;}
.process-step p{font-size:.84rem; color:var(--text-muted); line-height:1.6;}
@media (max-width:980px){.process-rail{grid-template-columns:repeat(3, 1fr);}}
@media (max-width:640px){.process-rail{grid-template-columns:repeat(2, 1fr);}}

/* ---- Why us ---- */
.why{background:var(--ink-950); color:#fff; position:relative; overflow:hidden;}
.why::before{
  content:''; position:absolute; top:-25%; right:-10%; width:640px; height:640px; border-radius:50%;
  background:radial-gradient(circle, rgba(61,77,224,.22), transparent 70%);
}
.why-grid{display:grid; grid-template-columns:1.1fr .9fr; gap:5rem; align-items:center; position:relative; z-index:1;}
.why .eyebrow{color:var(--bronze);}
.why .eyebrow::before{background:var(--bronze);}
.why .title-sub{color:rgba(255,255,255,.6);}
.why-features{display:grid; grid-template-columns:1fr 1fr; gap:1.8rem; margin-top:2.8rem;}
.why-feat{display:flex; gap:1rem; align-items:flex-start;}
.why-feat .icon-lg{color:var(--bronze); flex-shrink:0; margin-top:.15rem;}
.why-feat h3{font-size:.98rem; margin-bottom:.35rem; color:#fff;}
.why-feat p{font-size:.85rem; color:rgba(255,255,255,.55); line-height:1.6;}

.why-visual{position:relative; height:440px;}
.wcs-stack{position:relative; height:100%;}
.wcs-card{position:absolute; padding:1.7rem; border-radius:var(--r-lg);}
.wcs-main{width:88%; bottom:0; left:0; padding:2rem;}
.wcs-main p{color:rgba(255,255,255,.75); font-size:.9rem; line-height:1.7; margin-top:.9rem;}
.wcs-float1{width:72%; top:0; right:0; animation:float-y 7s ease-in-out infinite;}
.wcs-float2{width:56%; top:44%; left:0; animation:float-y 8s ease-in-out infinite 1s;}
.wcs-num{font-family:var(--font-display); font-weight:600; font-size:2.6rem; color:#fff; margin-top:.9rem;}
.wcs-label{font-size:.82rem; color:rgba(255,255,255,.55); margin-top:.3rem;}

@media (max-width:900px){
  .why-grid{grid-template-columns:1fr;}
  .why-visual{display:none;}
}
@media (max-width:560px){.why-features{grid-template-columns:1fr;}}

/* ---- Industries teaser ---- */
.ind-grid{display:grid; grid-template-columns:repeat(6, 1fr); gap:1rem;}
.ind-card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--r-md);
  padding:1.6rem 1rem; text-align:center; display:flex; flex-direction:column; align-items:center; gap:.7rem;
  transition:transform var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);
}
.ind-card .icon-lg{color:var(--accent);}
.ind-card span{font-size:.86rem; font-weight:600;}
.ind-card:hover{transform:translateY(-4px); border-color:var(--accent); box-shadow:var(--shadow-md);}
@media (max-width:980px){.ind-grid{grid-template-columns:repeat(4, 1fr);}}
@media (max-width:640px){.ind-grid{grid-template-columns:repeat(2, 1fr);}}
