/* ====== CSS: GOCheap Đông Anh Landing (Clean + Responsive) ====== */
:root{
  --bg: #ffffff;
  --text: #0f172a; /* slate-900 */
  --muted: #475569; /* slate-600 */
  --brand: #7C3AED; /* violet-600 */
  --brand-700: #6D28D9;
  --brand-50: #F5F3FF;
  --surface: #F8FAFC; /* slate-50 */
  --border: #E2E8F0; /* slate-200 */
  --radius: 14px;
  --shadow-sm: 0 4px 14px rgba(15,23,42,.06);
  --shadow: 0 10px 30px rgba(124,58,237,.15);
}

/* Reset (light) */
*, *::before, *::after{box-sizing:border-box}
html{line-height:1.15; -webkit-text-size-adjust:100%; scroll-behavior:smooth}
body{margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji"; color:var(--text); background:var(--bg); line-height:1.65}
img{max-width:100%; height:auto; display:block}

/* Layout */
.container{width:min(1120px, 92vw); margin-inline:auto}
.section{padding: clamp(48px, 8vw, 96px) 0}
.section.alt{background: var(--surface)}
.small{max-width:820px; margin-inline:auto}

/* Header */
.site-header{position:sticky; top:0; z-index:50; background: rgba(255,255,255,0.85); backdrop-filter:saturate(140%) blur(10px); border-bottom:1px solid var(--border)}
.header-grid{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0}
.logo{display:inline-flex; align-items:center; gap:10px; color:var(--text); text-decoration:none; font-weight:800}
.logo span{font-size:18px}

.main-nav ul{display:flex; gap:22px; list-style:none; margin:0; padding:0}
.main-nav a{color:var(--muted); text-decoration:none; font-weight:600}
.main-nav a:hover{color:var(--brand)}
.nav-toggle{display:none; border:1px solid var(--border); padding:8px 12px; border-radius:10px; background:#fff}

@media (max-width: 760px){
  .nav-toggle{display:inline-flex}
  .main-nav ul{display:none; position:absolute; right:16px; top:56px; background:#fff; border:1px solid var(--border); border-radius:12px; box-shadow:var(--shadow-sm); padding:10px; flex-direction:column; width:220px}
  .main-nav ul.open{display:flex}
}

/* Skip link */
.skip-link{position:absolute; left:-9999px}
.skip-link:focus{left:12px; top:12px; background:#000; color:#fff; padding:8px 12px; border-radius:8px; z-index:100}

/* Hero */
.hero{padding: clamp(40px, 10vw, 120px) 0}
.hero-grid{display:grid; grid-template-columns: 1.1fr .9fr; gap: clamp(20px, 4vw, 48px); align-items:center}
.hero-copy h1{font-size: clamp(28px, 4vw, 44px); line-height:1.2; margin:0 0 12px}
.hero-copy p{font-size: clamp(16px, 2.2vw, 18px); color:var(--muted)}
.hero-badges{display:flex; flex-wrap:wrap; gap:10px; list-style:none; margin:18px 0 0; padding:0}
.hero-badges li{padding:8px 12px; background:var(--brand-50); border:1px solid #EDE9FE; color:#5B21B6; border-radius:999px; font-weight:600; font-size:14px}

.hero-media picture, .hero-media img{border-radius: clamp(14px, 2vw, 20px); box-shadow: var(--shadow)}

.cta{display:flex; gap:12px; margin-top:16px; flex-wrap:wrap}
.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 16px; border-radius:12px; font-weight:700; text-decoration:none; border:2px solid transparent; transition:.25s ease; cursor:pointer}
.btn-primary{background:linear-gradient(135deg, var(--brand), var(--brand-700)); color:#fff; box-shadow: var(--shadow)}
.btn-primary:hover{filter:saturate(110%) brightness(1.05)}
.btn-outline{background:#fff; color:var(--brand); border-color:#EDE9FE}
.btn-outline:hover{border-color:var(--brand); background:var(--brand-50)}
.btn-ghost{background:transparent; color:var(--text); border-color:var(--border)}
.btn-ghost:hover{background:#fff; box-shadow: var(--shadow-sm)}

@media (max-width: 960px){
  .hero-grid{grid-template-columns: 1fr;}
}

/* Feature list */
.feature-list{display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:14px; padding:0; list-style:none}
.feature-list li{padding:14px 16px; background:#fff; border:1px solid var(--border); border-radius:12px}
@media (max-width: 760px){
  .feature-list{grid-template-columns:1fr}
}

/* Pricing */
.pricing{display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:18px}
.price-card{background:#fff; border:1px solid var(--border); border-radius:16px; padding:20px; box-shadow: var(--shadow-sm)}
.price-card h3{margin:0 0 8px}
.price-card ul{margin:0; padding-left:18px}
.note{color:var(--muted); margin-top:10px; font-size:14px}
@media (max-width: 960px){
  .pricing{grid-template-columns:1fr}
}

/* Contact */
.contact-grid{display:grid; grid-template-columns: 1fr .7fr; gap:20px}
.tip{background:#fff; border:1px solid var(--border); border-radius:14px; padding:16px}
.tip h3{margin-top:0}
@media (max-width: 860px){
  .contact-grid{grid-template-columns:1fr}
}

/* Footer */
.site-footer{border-top:1px solid var(--border); background:#fff}
.footer-grid{display:grid; grid-template-columns: 1fr auto auto; gap:20px; padding:24px 0; align-items:center}
.footer-grid ul{list-style:none; display:flex; gap:16px; margin:0; padding:0}
@media (max-width: 840px){
  .footer-grid{grid-template-columns:1fr; text-align:center}
  .footer-grid nav ul{justify-content:center}
}

/* Accessibility */
:focus-visible{outline:3px solid #a78bfa; outline-offset:2px}

/* Print */
@media print{
  .site-header, .cta, .hero-media, .tip{display:none}
  body{color:#000}
}
