body{
margin:0;
font-family:
system-ui,
-apple-system,
Segoe UI,
PingFang TC,
Microsoft JhengHei,
sans-serif;
color:#0f172a;
background:#ffffff;
}


/* container */

.container{
max-width:1100px;
margin:auto;
padding:0 20px;
}


/* nav */

.nav{
background:white;
border-bottom:1px solid #e2e8f0;
}

.nav-inner{
display:flex;
align-items:center;
justify-content:space-between;
height:64px;
}

.brand{
font-weight:600;
}

.menu a{
margin-left:20px;
text-decoration:none;
color:#64748b;
font-size:14px;
}

.menu a:hover{
color:#0f172a;
}


/* hero */

.hero{
position:relative;
height:100vh;
display:flex;
align-items:center;
justify-content:center;
overflow:hidden;
}

.hero-bg{
position:absolute;
width:100%;
height:100%;
object-fit:cover;
filter:brightness(.55);
}

.hero-overlay{
position:absolute;
width:100%;
height:100%;
background:

linear-gradient(
180deg,
rgba(15,23,42,.2),
rgba(15,23,42,.75)
),

linear-gradient(
90deg,
rgba(56,189,248,.15),
rgba(96,165,250,.15)
);
}

.hero-content{
position:relative;
z-index:2;
text-align:center;
}

.hero h1{
color:white;
font-size:64px;
line-height:1.15;
margin-bottom:14px;
}

.hero-sub{
color:#93c5fd;
letter-spacing:4px;
font-size:14px;
}


/* strip */

.strip{
text-align:center;
padding:16px;
font-size:13px;
letter-spacing:2px;
color:#64748b;
border-bottom:1px solid #e2e8f0;
}


/* section */

.section{
padding:80px 0;
}

h2{
font-size:30px;
margin-bottom:10px;
}

.lead{
font-size:17px;
color:#475569;
margin-bottom:30px;
line-height:1.7;
}


/* grid */

.grid{
display:grid;
gap:30px;
}

.grid-3{
grid-template-columns:repeat(3,1fr);
}

.grid-2{
grid-template-columns:repeat(2,1fr);
}

@media(max-width:900px){

.grid-3,
.grid-2{
grid-template-columns:1fr;
}

.hero h1{
font-size:38px;
}

}


/* card */

.card{
background:white;
border:1px solid #e2e8f0;
border-radius:12px;
padding:28px;
}

.card p{
color:#64748b;
line-height:1.6;
}


/* image */

.rnd-img{
width:100%;
border-radius:12px;
}


/* addr */

.addr{
margin-top:10px;
font-size:14px;
}

.addr a{
color:#2563eb;
text-decoration:none;
}

.addr a:hover{
text-decoration:underline;
}


/* button */

.btn{
display:inline-block;
margin-top:20px;
padding:12px 22px;
border-radius:8px;
text-decoration:none;
font-size:14px;
}

.btn.primary{
background:#2563eb;
color:white;
}


/* contact */

.contact{
text-align:center;
}


/* footer */

.footer{
border-top:1px solid #e2e8f0;
padding:30px 0;
text-align:center;
color:#64748b;
}

.rnd-capabilities{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:30px;
margin-top:20px;
}

.cap{
display:flex;
align-items:center;
gap:14px;
font-size:16px;
}

.cap-icon{
font-size:26px;
width:42px;
height:42px;
display:flex;
align-items:center;
justify-content:center;
background:#f1f5f9;
border-radius:8px;
}

.cap-title{
font-weight:500;
color:#0f172a;
}

.factory-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:30px;
margin-top:40px;
}

.factory-item{
position:relative;
display:block;
overflow:hidden;
border-radius:10px;
}

.factory-item img{
width:100%;
display:block;
transition:0.3s;
}

.factory-item:hover img{
transform:scale(1.05);
}

.factory-label{
position:absolute;
bottom:0;
left:0;
right:0;
padding:20px;

background:linear-gradient(
transparent,
rgba(0,0,0,0.6)
);

color:white;
font-weight:500;
}

.features{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:40px;
margin-top:40px;
}

.feature{
text-align:center;
}

.feature-icon{
font-size:34px;
margin-bottom:12px;
}

.feature h3{
margin-bottom:8px;
font-size:18px;
}

.feature p{
color:#64748b;
line-height:1.6;
}

.cta{
text-align:center;
padding:100px 0;
background:#f8fafc;
}

.cta h2{
margin-bottom:10px;
}

.cta p{
color:#64748b;
margin-bottom:20px;
}

/* =========================
   MOBILE RESPONSIVE
========================= */

@media (max-width: 900px){

/* container */

.container{
padding:0 18px;
}

/* NAV */

.nav-inner{
height:56px;
}

.brand{
font-size:14px;
}

.menu{
display:none;
}

/* HERO */

.hero{
height:80vh;
}

.hero h1{
font-size:34px;
line-height:1.25;
}

.hero-sub{
font-size:12px;
letter-spacing:2px;
}

/* STRIP */

.strip{
font-size:12px;
padding:14px 10px;
line-height:1.4;
}

/* SECTION */

.section{
padding:60px 0;
}

h2{
font-size:24px;
}

.lead{
font-size:15px;
}

/* FEATURES */

.features{
grid-template-columns:1fr;
gap:30px;
}

.feature{
text-align:left;
}

/* GRID */

.grid{
grid-template-columns:1fr !important;
gap:30px;
}

/* R&D */

.rnd-img{
border-radius:10px;
}

/* CAPABILITIES */

.rnd-capabilities{
grid-template-columns:1fr;
gap:20px;
}

.cap{
font-size:15px;
}

/* FACTORY */

.factory-grid{
grid-template-columns:1fr;
gap:24px;
}

/* CTA */

.cta{
padding:70px 0;
}

.cta h2{
font-size:24px;
}

.cta p{
font-size:15px;
}

/* BUTTON */

.btn{
padding:12px 20px;
font-size:14px;
}

}