*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
font-size:17px;
}

body{
font-family:Poppins, sans-serif;
color:white;
overflow-x:hidden; /* still important */

background:linear-gradient(135deg,#0f172a,#1e293b,#0b1220);
background-size:300% 300%;
animation:bgShift 10s ease infinite;
}

img{
max-width:100%;
height:auto;
display:block; /* 🔥 FIXS MOST OVERFLOW ISSUES */
}

/* =========================
   HEADER
========================= */

header{
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 6%;
background:#020617;
position:sticky;
top:0;
z-index:1000;
flex-wrap:wrap; /* 🔥 FIX MOBILE OVERFLOW */
gap:10px;
}

/* =========================
   HERO (FIXED RESPONSIVE)
========================= */

.hero{
position:relative;
min-height:85vh;
display:flex;
align-items:center;
padding:80px 6%;
background:url("https://images.unsplash.com/photo-1517836357463-d25dfeac3438") center/cover no-repeat;
}

.hero-content{
position:relative;
z-index:2;
width:100%;
display:grid;
grid-template-columns:1.3fr 1fr;
gap:40px;
}

/* 🔥 FIX HERO OVERFLOW ON SMALL SCREENS */
@media(max-width:900px){
.hero-content{
grid-template-columns:1fr;
text-align:center;
}

.hero-left h1{
font-size:42px;
}
}

/* =========================
   SECTION FIX
========================= */

.section{
padding:70px 6%;
max-width:1100px;
margin:25px auto;

background:rgba(255,255,255,0.05);
backdrop-filter:blur(12px);

border-radius:16px;
border:1px solid rgba(255,255,255,0.08);

overflow:hidden; /* 🔥 PREVENT CONTENT SPILL */
}

/* =========================
   GRID FIX (MAIN OVERFLOW FIX)
========================= */

.grid,
.products{
display:grid;
grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
gap:16px;
padding:20px 6%;
}

/* =========================
   CARD FIX
========================= */

.card{
background:rgba(255,255,255,0.07);
padding:18px;
border-radius:14px;
border:1px solid rgba(255,255,255,0.1);
transition:0.3s;

width:100%;
max-width:100%;
overflow:hidden; /* 🔥 IMPORTANT */
}

/* =========================
   PRODUCT IMAGES FIX
========================= */

.products img{
width:100%;
height:160px;
object-fit:cover;
border-radius:12px;
}

/* =========================
   TEXT FIX
========================= */

.section h2{
font-size:38px;
font-weight:900;
margin-bottom:15px;
word-wrap:break-word; /* 🔥 prevents text overflow */
}

.section p{
word-wrap:break-word;
}

/* =========================
   BUTTON FIX
========================= */

.btn{
display:inline-block;
padding:10px 14px;
border-radius:10px;
font-size:14px;
text-decoration:none;
margin-top:10px;
max-width:100%;
}

/* =========================
   MOBILE FINAL FIX
========================= */

@media(max-width:768px){

.hero{
padding:60px 4%;
}

.hero-left h1{
font-size:36px;
}

.section h2{
font-size:26px;
}

.grid,
.products{
grid-template-columns:1fr; /* 🔥 stops overflow completely */
padding:15px;
}

header{
flex-direction:column;
text-align:center;
}
}
