/* Landing page — vibrant, Kahoot-inspired */
:root{
	--bg-1:#0ea5e9; /* sky */
	--bg-2:#8b5cf6; /* violet */
	--bg-3:#22c55e; /* green */
	--text:#0b1220;
	--surface:#ffffff;
	--shadow:0 10px 30px rgba(2,6,23,.15);
	--glass-bg:rgba(255,255,255,.1);
	--glass-stroke:rgba(255,255,255,.25);
	--brand:#10b981;
}

/* Reset-lite */
*{box-sizing:border-box}
html,body{height:100%}
body{
	margin:0;
	font-family:system-ui, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
	color:var(--text);
	background:linear-gradient(120deg,var(--bg-1),var(--bg-2) 60%,var(--bg-3));
	background-attachment:fixed;
	overflow-x:hidden;
}

.bg-gradient{position:fixed;inset:0;background:radial-gradient(60vw 60vh at 10% 10%,rgba(255,255,255,.25),transparent 60%),radial-gradient(50vw 50vh at 90% 30%,rgba(255,255,255,.2),transparent 60%);filter:saturate(120%);pointer-events:none}
.bg-shapes{position:fixed;inset:0;pointer-events:none}
.shape{position:absolute;width:200px;height:200px;border-radius:24px;opacity:.25;filter:blur(6px);transform:translateZ(0)}
.shape.s1{background:#22d3ee;top:10%;left:-40px;transform:rotate(18deg)}
.shape.s2{background:#f472b6;bottom:15%;right:-60px;transform:rotate(-12deg)}
.shape.s3{background:#fb923c;top:40%;right:20%;transform:rotate(8deg)}

.container{position:relative;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:32px}

.hero{width:100%;max-width:1100px;margin-top:32px;display:grid;grid-template-columns:1.2fr .8fr;gap:24px}
@media (max-width:900px){.hero{grid-template-columns:1fr}}

.brand{backdrop-filter:saturate(140%) blur(10px);background:var(--glass-bg);border:1px solid var(--glass-stroke);border-radius:24px;padding:28px;box-shadow:var(--shadow)}
.logo{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#ffffffaa;font-size:28px;box-shadow:0 6px 20px rgba(0,0,0,.1);margin-bottom:8px}
.title{font-size:clamp(28px,4vw,48px);line-height:1.05;margin:12px 0 8px 0;color:#fff}
.subtitle{margin:0;color:#eef3ff;font-weight:500;max-width:60ch}

.cta{display:flex;gap:12px;align-items:center;justify-content:flex-start}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:14px;padding:12px 16px;font-weight:700;text-decoration:none;transition:transform .12s ease, box-shadow .12s ease, background .12s ease}
.btn-primary{background:#111827;color:#fff;box-shadow:0 8px 20px rgba(17,24,39,.35)}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ghost{background:rgba(255,255,255,.18);color:#fff;border:1px solid rgba(255,255,255,.35)}
.btn-ghost:hover{background:rgba(255,255,255,.28)}

.cards-grid{width:100%;max-width:1100px;margin:16px auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:1000px){.cards-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.cards-grid{grid-template-columns:1fr}}

.card{background:var(--surface);border-radius:18px;padding:18px;border:1px solid #e5e7eb;box-shadow:var(--shadow);text-decoration:none;color:inherit;display:block;transform:translateZ(0);transition:transform .12s ease, box-shadow .12s ease}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 40px rgba(2,6,23,.2)}
.card-icon{width:44px;height:44px;border-radius:12px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:8px}
.card-title{margin:6px 0 2px 0}
.card-desc{margin:0;color:#475569}

.info{margin:8px 0 24px 0;text-align:center}
.pill{display:inline-block;background:#ffffff;box-shadow:var(--shadow);border-radius:999px;padding:8px 14px;border:1px solid #e5e7eb}
.tip{color:#e5ecff}

.footer{width:100%;max-width:1100px;margin:8px auto 0 auto;display:flex;align-items:center;justify-content:center;color:#e5ecff;opacity:.9}

