*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Inter',sans-serif;
background:#040712;
overflow-x:hidden;
color:#f8fafc;
}

/* Deep Tech Mesh Grid Matrix */
body::before{
content:'';
position:fixed;
inset:0;
background:
radial-gradient(circle at 20% 30%, rgba(99,102,241,.12), transparent 40%),
radial-gradient(circle at 80% 70%, rgba(168,85,247,.1), transparent 45%),
linear-gradient(to bottom, #040712, #02040a);
z-index:-2;
}

body::after{
content:'';
position:fixed;
inset:0;
background-image:
linear-gradient(rgba(99, 102, 241, 0.01) 1px, transparent 1px),
linear-gradient(90deg, rgba(99, 102, 241, 0.01) 1px, transparent 1px);
background-size:30px 30px;
z-index:-1;
}

.container{
width:min(1260px,90%);
margin:auto;
}

/* =========================
DYNAMIC HOVER HOOK BUTTONS
========================= */

.action-row{
display:flex;
gap:16px;
margin-top:35px;
flex-wrap:wrap;
}

.php-btn{
padding:16px 36px;
border:none;
cursor:pointer;
font-weight:700;
border-radius:6px; /* Flat modern enterprise design */
font-size:15px;
position:relative;
overflow:hidden;
display:inline-flex;
align-items:center;
justify-content:center;
z-index: 1;
transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.php-btn.solid-indigo{
background: linear-gradient(135deg, #6366f1, #4f46e5);
color: var(--text);
box-shadow: 0 4px 20px rgba(99, 102, 241, 0.3);
}

.php-btn.transparent-border{
background: transparent;
border: 1px solid ;
color: #4f46e5;
border-color: black;
}

/* Hover Background Sweeper Line */
.php-btn::after {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
transition: 0.5s;
z-index: -1;
}

/* Interactive States */
.php-btn.solid-indigo:hover {
transform: translateY(-4px);
box-shadow: 0 15px 35px rgba(99, 102, 241, 0.5);
background: linear-gradient(135deg, #4f46e5, #4338ca);
}

.php-btn.transparent-border:hover {
background: rgba(255, 255, 255, 0.04);
border-color: #6366f1;
color: var(--text);
transform: translateY(-4px);
box-shadow: 0 12px 25px rgba(99, 102, 241, 0.15);
}

.php-btn:hover::after {
left: 100%;
}

/* =========================
GEOMETRIC SPLIT HERO LAYOUT
========================= */

.php-hero{
padding:180px 0 100px;
position:relative;
background: white;
}

.hero-geometric-matrix{
display:grid;
grid-template-columns: 55% 45%;
gap:50px;
align-items:center;
}

/* Text Core Panel */
.hero-intro-panel .badge-tag {
display: inline-flex;
padding: 6px 16px;
background: rgba(99,102,241,0.08);
border: 1px solid rgba(99,102,241,0.18);
border-radius: 4px;
font-size: 11px;
font-weight: 700;
color: #818cf8;
letter-spacing: 1.5px;
text-transform: uppercase;
margin-bottom: 25px;
}

.hero-intro-panel h1 {
font-size: 68px;
line-height: 1.05;
font-weight: 900;
letter-spacing: -3px;
margin-bottom: 25px;
}

.hero-intro-panel h1 span {
background: linear-gradient(to right, #6366f1, #a855f7);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}

.hero-intro-panel p {
font-size: 19px;
line-height: 1.8;
color: #94a3b8;
}

/* Visual Panel Core */
.hero-display-panel {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
position: relative;
}

.matrix-box {
background: var(--section-bg);
border: 1px solid var(--border);
border-radius: 16px;
padding: 30px;
backdrop-filter: blur(10px);
transition: transform 0.4s ease;
}

.matrix-box:nth-child(odd) {
transform: translateY(25px);
}

.matrix-box:hover {
transform: translateY(-5px) !important;
background: var(--card-bg);
border-color: rgba(99,102,241,0.2);
}

.matrix-box h4 {
font-size: 18px;
font-weight: 700;
color: var(--text);
margin-bottom: 8px;
}

.matrix-box p {
font-size: 13px;
color: #64748b;
line-height: 1.6;
}

.matrix-icon {
font-size: 28px;
margin-bottom: 15px;
}

/* =========================
HORIZONTAL PROGRESS STEP-SLIDER (NEW)
========================= */

.slider-section {
padding: 110px 0;
background:white;
border-top: 1px solid rgba(255,255,255,0.02);
border-bottom: 1px solid rgba(255,255,255,0.02);
}

.section-headline {
text-align: center;
margin-bottom: 60px;
}

.section-headline h2 {
font-size: 44px;
font-weight: 800;
letter-spacing: -2px;
margin-bottom: 15px;
}

.section-headline p {
font-size: 18px;
color: #64748b;
}

/* Slider Mechanism */
.slider-stage {
background: #e4ebf5;
border: 1px solid rgba(255,255,255,0.04);
border-radius: 24px;
padding: 50px;
position: relative;
overflow: hidden;
min-height: 380px;
display: flex;
align-items: center;
}

.slide-content-block {
display: none;
animation: fadeSwap 0.6s ease forwards;
grid-template-columns: 45% 55%;
gap: 50px;
align-items: center;
width: 100%;
}

.slide-content-block.active-slide {
display: grid;
}

.slide-graphic-box {
height: 250px;
border-radius: 16px;
overflow: hidden;
border: 1px solid rgba(255,255,255,0.06);

}

.slide-graphic-box img {
width: 100%;
height: 100%;
object-fit: cover;
}

.slide-text-box h3 {
font-size: 32px;
font-weight: 700;
margin-bottom: 15px;
color: var(--text);
}

.slide-text-box p {
font-size: 16px;
line-height: 1.8;
color: #94a3b8;
}

/* Horizontal Pipeline Switcher Controls */
.slider-navigation-pipeline {
display: flex;
justify-content: center;
gap: 15px;
margin-top: 40px;

}

.pipeline-step-dot {
background: rgba(255,255,255,0.05);
border: 1px solid rgba(255,255,255,0.08);
color: #64748b;
padding: 12px 24px;
border-radius: 6px;
cursor: pointer;
font-weight: 600;
font-size: 14px;
transition: all 0.3s ease;
background-color: white;
}

.pipeline-step-dot.active-pipeline {
border-color: #6366f1;
color: var(--text);
box-shadow: 0 0 20px rgba(99,102,241,0.2);
}

/* =========================
ALTERNATING OFFSET ADVANTAGE LIST
========================= */

.advantage-section {
padding: 110px 0;
}

.offset-layout-row {
display: flex;
align-items: center;
gap: 80px;
margin-bottom: 90px;
background: white;
}

.offset-layout-row:nth-child(even) {
flex-direction: row-reverse;
}

.offset-info-column, .offset-media-column {
flex: 1;
}

.offset-media-frame {
width: 100%;
height: 360px;
border-radius: 20px;
overflow: hidden;
border: 1px solid var(--border);
box-shadow: 0 25px 60px rgba(0,0,0,0.4);
}

.offset-media-frame img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.offset-layout-row:hover .offset-media-frame img {
transform: scale(1.04);
}

.offset-info-column h3 {
font-size: 36px;
font-weight: 800;
letter-spacing: -1px;
margin-bottom: 20px;
}

.offset-info-column p {
font-size: 16px;
line-height: 1.8;
color: #94a3b8;
}

.bullet-tech-spec {
margin-top: 20px;
display: flex;
gap: 12px;
flex-wrap: wrap;
}

.spec-node {
background: var(--card-bg);
padding: 6px 14px;
border-radius: 4px;
font-size: 13px;
color:  #4f46e5 ;
border: 1px solid ;
border-color: #4338ca
}

/* =========================
EXACT HOME PAGE CTA SECTION
========================= */

.cta-section{
padding:120px 0;
background: white;
}

.cta-box{
position:relative;
padding:80px;
border-radius:48px;
overflow:hidden;
background:rgb(215, 175, 241);
border:1px solid rgba(255,255,255,.08);
backdrop-filter:blur(18px);

}

.cta-box::before{
content:'';
position:absolute;
width:450px;
height:450px;
background:rgba(110, 168, 255, 0.1);
border-radius:50%;
top:-180px;
right:-120px;
filter:blur(60px);
}

.cta-content{
position:relative;
z-index:2;
max-width:950px;
}

.cta-content h2{
font-size:64px;
line-height:1.1;
letter-spacing:-3px;
margin-bottom:28px;
font-weight: 800;
}

.cta-content p{
font-size:20px;
line-height:1.9;
color:var(--text-light);
margin-bottom:35px;
}

/* =========================
KEYFRAME RUNNERS
========================= */

@keyframes fadeSwap {
from { opacity: 0; transform: translateX(15px); }
to { opacity: 1; transform: translateX(0px); }
}

/* =========================
RESPONSIVE DEVICE DISPLACEMENT
========================= */

@media(max-width:1200px){
.hero-intro-panel h1 { font-size: 52px; }
.offset-layout-row { gap: 40px; margin-bottom: 70px; }
}

@media(max-width:1024px){
.hero-geometric-matrix { grid-template-columns: 1fr; gap: 60px; text-align: center; }
.hero-display-panel { max-width: 600px; margin: 0 auto; }
.action-row { justify-content: center; }
.slide-content-block { grid-template-columns: 1fr; gap: 30px; text-align: center; }
.slide-graphic-box { height: 200px; }
.offset-layout-row, .offset-layout-row:nth-child(even) { flex-direction: column; gap: 30px; }
.offset-media-frame { height: 280px; }
}

@media(max-width:768px){
.php-hero { padding: 130px 0 60px; }
.hero-intro-panel h1 { font-size: 36px; letter-spacing: -1.5px; }
.hero-intro-panel p, .section-headline p, .slide-text-box p, .offset-info-column p { font-size: 16px; }
.matrix-box { padding: 20px; }
.matrix-box:nth-child(odd) { transform: translateY(0); } /* Neutralize desktop tilt offset on mobile */
.hero-display-panel { grid-template-columns: 1fr; width: 100%; }
.section-headline h2 { font-size: 30px; }
.slider-stage { padding: 30px 20px; }
.offset-info-column h3 { font-size: 26px; }
.slider-navigation-pipeline { flex-wrap: wrap; }
.pipeline-step-dot { width: 100%; text-align: center; }
.cta-box { padding: 50px 24px; border-radius: 32px; }
.cta-content h2 { font-size: 34px; letter-spacing: -1px; }
.cta-content p { font-size: 16px; }
.php-btn { width: 100%; }
}

.Banner {
        margin-bottom: 0px;
        position: relative;
        background: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.85)), url('imgs/banner.avif') no-repeat center center/cover;
        height: 350px;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
        padding: 0 20px;
    }

    .hero-content {
        position: relative;
        z-index: 2;
        max-width: 800px;
    }

    .hero-content h1 {
        font-size: 42px;
        font-weight: 800;
        letter-spacing: 1px;
        margin-bottom: 15px;
        text-transform: uppercase;
        color: white;
    }

    .hero-content h2{
        font-size: 28px;
        font-weight: 600;
        letter-spacing: 1px;
        margin-bottom: 0px;
        color: #cbd5e1;
        font-style: italic;
    }
