/* ---------- variables ---------- */
:root{
  --accent: #27407a; /* navy from slides */
  --accent-2: #1f2f5b;
  --muted: #64707f;
  --bg: #f6f7f9;
  --card: #ffffff;
  --whatsapp: #00c853;
  --radius: 14px;
  --container: 1180px;
  font-family: "Inter", system-ui, Arial, sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:#213242;font-family:var(--font);line-height:1.6;-webkit-font-smoothing:antialiased}
.container{max-width:var(--container);margin:0 auto;padding:0 22px}

/* ---------- header ---------- */
header{position:sticky;top:0;background:#fff;z-index:999;padding:10px 0;box-shadow:0 2px 8px rgba(12,24,40,0.06)}
.nav{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:14px}
.logo{width:54px;height:54px;border-radius:10px;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px}
.brand-name{font-weight:700;color:var(--accent)}
.brand-sub{font-size:13px;color:#788896}
.main-nav ul{display:flex;gap:28px;list-style:none}
.main-nav a{color:#263748;font-weight:600}
.nav-cta .cta{background:var(--accent);color:#fff;padding:10px 18px;border-radius:12px;border:none}

/* ---------- hero ---------- */
.hero{min-height:520px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;justify-content:center}
.hero .overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(39,64,122,0.85), rgba(39,64,122,0.85))}
.hero-inner{position:relative;color:#fff;text-align:center;padding:44px 20px}
.hero-kicker{letter-spacing:2px;font-weight:600}
.hero-title{font-size:32px;margin:12px 0 14px;font-weight:700}
.hero-lead{max-width:920px;margin:0 auto 22px;font-size:18px;color:rgba(255,255,255,0.92)}
.hero-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.btn{background:#fff;color:var(--accent);padding:12px 22px;border-radius:12px;font-weight:700;cursor:pointer;border:none;transition:transform .22s,box-shadow .22s}
.btn-outline{background:transparent;border:2px solid rgba(255,255,255,0.18);color:#fff}
.btn-primary:hover,.btn-outline:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(12,24,40,0.18)}

/* ---------- sections ---------- */
.section{padding:48px 0}
.center{text-align:center}
.kicker{color:var(--accent);margin-bottom:8px;font-weight:700}
.section-title{font-size:22px;color:var(--accent);margin-bottom:8px}
.section-sub{color:var(--muted);max-width:860px;margin:10px auto 22px}

/* ---------- stats ---------- */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:26px}
.stat-card{background:#f8fafc;border-radius:14px;padding:28px;text-align:center;box-shadow:0 6px 18px rgba(12,24,40,0.04);transition:transform .22s,box-shadow .22s}
.stat-card:hover{transform:translateY(-8px);box-shadow:0 28px 46px rgba(12,24,40,0.10);background:var(--accent);color:#fff}
.stat-img{width:56px;height:56px;object-fit:contain;margin-bottom:14px}
.stat-num{font-size:34px;font-weight:700;margin-bottom:8px}
.stat-label{color:var(--muted)}

/* ---------- product cards ---------- */
.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.product{background:var(--card);border-radius:14px;overflow:hidden;box-shadow:0 12px 28px rgba(12,24,40,0.06);transition:transform .22s,box-shadow .22s}
.product:hover{transform:translateY(-8px) scale(1.015);box-shadow:0 36px 64px rgba(12,24,40,0.12)}
.product-img{width:100%;height:260px;object-fit:cover;display:block}
.product-body{padding:20px}
.product h3{color:var(--accent);margin-bottom:10px}
.product p{color:var(--muted);margin-bottom:12px}
.link-more{font-weight:700;color:var(--accent)}

/* ---------- printing methods ---------- */
.methods{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;margin-top:12px}
.method{flex:1 1 18%;min-width:160px;background:#fff;border-radius:12px;padding:22px;text-align:center;border:2px solid rgba(39,64,122,0.06);transition:box-shadow .18s,transform .18s,border-color .18s}
.method:hover{border-color:var(--accent);box-shadow:0 18px 36px rgba(39,64,122,0.06);transform:translateY(-6px)}
.method-icon{width:62px;height:62px;object-fit:contain;margin-bottom:12px}

/* ---------- features ---------- */
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:18px}
.feature{background:#fff;border-radius:12px;padding:22px;text-align:center;box-shadow:0 12px 26px rgba(12,24,40,0.04);transition:transform .18s,box-shadow .18s}
.feature:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 28px 44px rgba(12,24,40,0.08)}
.feature-icon{width:70px;height:70px;object-fit:contain;margin-bottom:12px}

/* ---------- gallery ---------- */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.gallery-item{border-radius:12px;overflow:hidden;box-shadow:0 12px 28px rgba(12,24,40,0.06);transition:transform .18s}
.gallery-item img{width:100%;height:320px;object-fit:cover;display:block}
.gallery-item:hover{transform:translateY(-8px) scale(1.02)}

/* ---------- testimonials ---------- */
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.test-card{background:#fff;border-radius:12px;padding:22px;box-shadow:0 12px 26px rgba(12,24,40,0.04);transition:transform .18s}
.test-card:hover{transform:translateY(-8px) scale(1.01)}
.stars{color:#f6b93b;font-weight:700;margin-bottom:8px}
.quote{font-style:italic;color:#2a3a4a}
.test-name{margin-top:12px;font-weight:700;color:var(--accent)}
.company{color:var(--muted);font-weight:600}

/* ---------- contact ---------- */
.contact-wrap{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start}
.contact-form input,.contact-form textarea{width:100%;padding:14px;border-radius:10px;border:1px solid #e9eef4;background:#fbfcfd;margin-bottom:12px}
.btn-submit{background:var(--accent);color:#fff;padding:12px;border-radius:10px;border:none;width:100%;font-weight:700;cursor:pointer}
.contact-card{background:#fff;padding:18px;border-radius:12px;box-shadow:0 12px 26px rgba(12,24,40,0.04)}
.map{margin-top:12px;border-radius:10px;height:220px;overflow:hidden}

/* ---------- footer ---------- */
footer{background:var(--accent);color:#fff;padding:36px 0;margin-top:32px}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}
.footer-logo{width:48px;height:48px;background:#fff;color:var(--accent);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;margin-right:12px}
.footer-title{font-weight:700}
.footer-sub{opacity:0.95}
.footer-desc{opacity:0.95;margin-top:12px}
.footer-bottom{text-align:center;padding-top:18px;border-top:1px solid rgba(255,255,255,0.06);margin-top:18px}

/* ---------- floating whatsapp ---------- */
.whatsapp-float{position:fixed;right:18px;bottom:18px;background:var(--whatsapp);width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:9999;box-shadow:0 12px 30px rgba(0,0,0,0.18);overflow:hidden}
.whatsapp-float img{width:44px;height:44px;object-fit:contain}

/* ---------- responsive ---------- */
@media(max-width:1100px){
  .cards-grid{grid-template-columns:repeat(2,1fr)}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .features{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .main-nav ul{display:none}
  .contact-wrap{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr}
  .test-grid{grid-template-columns:1fr}
  .cards-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr}
  .features{grid-template-columns:1fr}
  .hero{min-height:420px}
  .hero-title{font-size:22px}
}
/* ---------- footer link color fix ---------- */
.footer-links a,
.footer-links a:visited,
.footer-links a:hover {
  color: #ffffff;
  text-decoration: none;
}

.footer-links a:hover {
  text-decoration: underline;
}
