/* =========================================================
   ADAMANT ENGINEERS - HERO + SIMPLE PREMIUM ANIMATIONS
========================================================= */

/* ---------- HERO LAYOUT FIX (no overlap with header) ---------- */
.hero-simple{
    position:relative;
    min-height:calc(100vh - 80px);
    display:flex;
    align-items:center;
    padding:110px 0 120px;
    background:#07111f;
    overflow:hidden;
}

.hero-simple .hero-container{
    position:relative;
    z-index:5;
}

.hero-simple .hero-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    animation:heroZoom 18s ease-in-out infinite alternate;
}

.hero-simple .hero-overlay{
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(90deg, rgba(6,12,22,.92) 0%, rgba(6,12,22,.75) 45%, rgba(6,12,22,.40) 100%);
}

.hero-simple .hero-grid{
    position:absolute;
    inset:0;
    z-index:2;
    background-image:
        linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
    background-size:60px 60px;
    opacity:.35;
    animation:gridMove 20s linear infinite;
    mask-image:radial-gradient(ellipse at center, #000 30%, transparent 85%);
    -webkit-mask-image:radial-gradient(ellipse at center, #000 30%, transparent 85%);
}

@keyframes heroZoom{
    from{ transform:scale(1.03); }
    to{ transform:scale(1.10); }
}
@keyframes gridMove{
    from{ background-position:0 0, 0 0; }
    to{ background-position:60px 60px, 60px 60px; }
}

/* ---------- Soft glowing lights ---------- */
.hero-spark{
    position:absolute;
    border-radius:50%;
    filter:blur(40px);
    pointer-events:none;
    z-index:2;
    animation:flashGlow 6s ease-in-out infinite;
}
.spark-1{
    width:300px; height:300px;
    background:radial-gradient(circle, rgba(0,194,255,.35), transparent 70%);
    top:8%; left:3%;
}
.spark-2{
    width:360px; height:360px;
    background:radial-gradient(circle, rgba(13,110,253,.30), transparent 70%);
    top:15%; right:5%;
    animation-delay:1.8s;
}
.spark-3{
    width:260px; height:260px;
    background:radial-gradient(circle, rgba(255,255,255,.12), transparent 70%);
    bottom:8%; left:35%;
    animation-delay:3s;
}
@keyframes flashGlow{
    0%,100%{ transform:scale(1); opacity:.35; }
    50%{ transform:scale(1.3); opacity:.85; }
}

/* ---------- Flash / spark canvas ---------- */
#flashCanvas{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    z-index:3;
    pointer-events:none;
}

/* ---------- Hero Tag ---------- */
.hero-tag-simple{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 18px;
    border-radius:999px;
    border:1px solid rgba(0,194,255,.35);
    background:rgba(255,255,255,.05);
    color:#bfeeff;
    font-size:14px;
    letter-spacing:.03em;
    box-shadow:0 0 18px rgba(0,194,255,.15);
    opacity:0;
    animation:textSoftIn .8s ease forwards;
}
.hero-tag-simple .tag-dot{
    width:8px; height:8px;
    border-radius:50%;
    background:#00c2ff;
    box-shadow:0 0 12px rgba(0,194,255,.9);
    animation:pulseDot 1.8s infinite;
}
@keyframes pulseDot{
    0%{ box-shadow:0 0 0 0 rgba(0,194,255,.7); }
    70%{ box-shadow:0 0 0 12px rgba(0,194,255,0); }
    100%{ box-shadow:0 0 0 0 rgba(0,194,255,0); }
}

/* ---------- Hero Title (simple line by line) ---------- */
.hero-title-simple{
    margin:22px 0 22px;
    font-size:clamp(40px, 6vw, 72px);
    line-height:1.08;
    font-weight:800;
    background:none !important;
    -webkit-text-fill-color:initial !important;
}
.hero-line{
    display:block;
    overflow:hidden;
    padding-bottom:4px;
}
.hero-word{
    display:inline-block;
    opacity:0;
    transform:translateY(100%);
    animation:wordFadeUp .8s cubic-bezier(.2,.8,.2,1) forwards;
}
.hero-line:nth-child(1) .hero-word{ animation-delay:.25s; }
.hero-line:nth-child(2) .hero-word{ animation-delay:.5s; }
.hero-line:nth-child(3) .hero-word{ animation-delay:.75s; }
.hero-line:nth-child(4) .hero-word{ animation-delay:1s; }

.hero-word.white{ color:#fff; }
.hero-word.blue-light{
    background:linear-gradient(90deg,#00d4ff,#19a0ff);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}
.hero-word.blue-dark{
    background:linear-gradient(90deg,#19a0ff,#2e6bff);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}
@keyframes wordFadeUp{
    to{ opacity:1; transform:translateY(0); }
}

.hero-subtitle-simple{
    max-width:620px;
    font-size:18px;
    color:rgba(255,255,255,.75);
    margin-bottom:34px;
    opacity:0;
    animation:textSoftIn .9s ease forwards;
    animation-delay:1.3s;
}
.hero-btns{
    opacity:0;
    animation:textSoftIn .9s ease forwards;
    animation-delay:1.55s;
}
@keyframes textSoftIn{
    from{ opacity:0; transform:translateY(14px); }
    to{ opacity:1; transform:translateY(0); }
}

.btn-simple,
.btn-simple-outline{
    padding:14px 30px;
    border-radius:14px;
    font-weight:700;
}
.btn-simple{
    background:linear-gradient(135deg,#1e7fff,#14b8ff);
    color:#fff;
    border:none;
    box-shadow:0 12px 28px rgba(30,127,255,.3);
}
.btn-simple:hover{
    color:#fff;
    transform:translateY(-3px);
    box-shadow:0 18px 38px rgba(30,127,255,.45);
}
.btn-simple-outline{
    border:1px solid rgba(255,255,255,.25);
    background:rgba(255,255,255,.05);
    color:#fff;
}
.btn-simple-outline:hover{
    background:#fff;
    color:#08111f;
}

/* ---------- Marquee Strip (fixed) ---------- */
.marquee-strip{
    position:relative;
    z-index:6;
    background:linear-gradient(90deg,#0d6efd,#7c3aed,#0d6efd);
    background-size:200% 100%;
    animation:stripMove 10s linear infinite;
    padding:16px 0;
    overflow:hidden;
    white-space:nowrap;
}
.marquee-track{
    display:inline-flex;
    align-items:center;
    gap:34px;
    animation:marquee 32s linear infinite;
}
.marquee-track span{
    color:#fff;
    font-weight:700;
    font-size:17px;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.marquee-track i{
    color:#ffe14d;
    filter:drop-shadow(0 0 8px #ffe14d);
}
.marquee-strip:hover .marquee-track{ animation-play-state:paused; }
@keyframes marquee{
    from{ transform:translateX(0); }
    to{ transform:translateX(-50%); }
}
@keyframes stripMove{
    from{ background-position:0% 50%; }
    to{ background-position:200% 50%; }
}

/* ---------- Feature section sits cleanly below the strip ---------- */
.feature-strip-section{
    margin-top:0 !important;
    padding-top:70px;
    position:relative;
    z-index:2;
}

/* ---------- Scroll reveal ---------- */
.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:opacity .8s cubic-bezier(.2,.8,.2,1), transform .8s cubic-bezier(.2,.8,.2,1);
}
.reveal.in-view{
    opacity:1;
    transform:translateY(0);
}

/* ---------- Icon soft pulse ring ---------- */
.feature-icon, .info-icon{ position:relative; }
.feature-icon::after, .info-icon::after{
    content:'';
    position:absolute;
    inset:-5px;
    border-radius:22px;
    border:2px solid rgba(0,194,255,.3);
    animation:ringPulse 2.6s ease-out infinite;
}
@keyframes ringPulse{
    0%{ transform:scale(.88); opacity:.9; }
    100%{ transform:scale(1.35); opacity:0; }
}

/* ---------- CTA glow ---------- */
.cta-dark-section::before,
.cta-dark-section::after{
    content:'';
    position:absolute;
    border-radius:50%;
    filter:blur(90px);
    pointer-events:none;
}
.cta-dark-section::before{
    width:380px; height:380px;
    background:rgba(0,194,255,.28);
    top:-140px; left:-90px;
    animation:flashGlow 8s ease-in-out infinite;
}
.cta-dark-section::after{
    width:380px; height:380px;
    background:rgba(13,110,253,.28);
    bottom:-140px; right:-90px;
    animation:flashGlow 10s ease-in-out infinite 2s;
}

/* ---------- WhatsApp ripple ---------- */
.whatsapp-float{ position:fixed; }
.whatsapp-float::after{
    content:'';
    position:absolute;
    inset:0;
    border-radius:50%;
    border:2px solid #25d366;
    animation:waRipple 2s infinite;
}
@keyframes waRipple{
    0%{ transform:scale(1); opacity:.8; }
    100%{ transform:scale(1.8); opacity:0; }
}

/* ---------- Responsive ---------- */
@media (max-width:991px){
    .hero-simple{
        min-height:auto;
        padding:90px 0 90px;
    }
    .hero-subtitle-simple{ font-size:16px; }
}
@media (max-width:767px){
    .hero-simple{ padding:70px 0 80px; }
    .hero-title-simple{ font-size:clamp(34px, 10vw, 46px); }
    .marquee-track span{ font-size:13px; }
    .hero-spark{ filter:blur(28px); }
}

@media (prefers-reduced-motion: reduce){
    *{ animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}
