* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Inter','Segoe UI',sans-serif; background:#0d1b2a; color:#e8edf2; min-height:100vh; }

/* HEADER */
.header { background:linear-gradient(135deg,#0d1b2a 0%,#112233 100%); border-bottom:3px solid #3dd6c0; padding:28px 40px; display:flex; align-items:center; gap:36px; }
.header img { height:70px; filter:drop-shadow(0 0 12px rgba(61,214,192,.3)); }
.header-div { width:2px; height:60px; background:#3dd6c0; opacity:.5; }
.header-text h1 { font-size:2rem; font-weight:900; color:#fff; letter-spacing:-.5px; line-height:1.1; }
.header-text h1 span { color:#3dd6c0; }
.header-text p { font-size:.95rem; color:#8ba3bc; margin-top:4px; font-weight:300; }

/* NOTE */
.note { margin:30px 40px 10px; background:linear-gradient(135deg,rgba(61,214,192,.12),rgba(61,214,192,.05)); border:1px solid rgba(61,214,192,.4); border-left:4px solid #3dd6c0; border-radius:8px; padding:16px 22px; display:flex; align-items:flex-start; gap:14px; }
.note .ico { font-size:1.4rem; margin-top:1px; flex-shrink:0; }
.note p { font-size:.92rem; color:#c8dde8; line-height:1.6; }
.note strong { color:#3dd6c0; }

/* INTRO */
.intro { padding:10px 40px 24px; text-align:center; }
.intro p { font-size:1.05rem; color:#8ba3bc; max-width:680px; margin:0 auto; line-height:1.7; }

/* GRID */
.grid { padding:0 40px 40px; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }

/* CARD */
.card { background:linear-gradient(160deg,#112233 0%,#0f1e2e 100%); border:1px solid rgba(61,214,192,.15); border-radius:14px; padding:24px 22px; position:relative; overflow:hidden; transition:transform .2s,border-color .2s,box-shadow .2s; }
.card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--a,#3dd6c0); border-radius:14px 14px 0 0; }
.card:hover { transform:translateY(-4px); border-color:rgba(61,214,192,.35); box-shadow:0 12px 32px rgba(0,0,0,.4); }
.ci { font-size:2rem; margin-bottom:12px; display:block; }
.ct { font-size:1.05rem; font-weight:700; color:#fff; margin-bottom:8px; }
.cd { font-size:.82rem; color:#7a9ab2; line-height:1.6; margin-bottom:14px; }
.tags { list-style:none; display:flex; flex-wrap:wrap; gap:6px; }
.tags li { background:rgba(61,214,192,.1); color:#3dd6c0; font-size:.72rem; font-weight:600; padding:3px 10px; border-radius:20px; border:1px solid rgba(61,214,192,.2); }

/* COLOR VARIANTS */
.teal  { --a:#3dd6c0; } .teal  .tags li { background:rgba(61,214,192,.1);  color:#3dd6c0; border-color:rgba(61,214,192,.2); }
.blue  { --a:#4aa3e0; } .blue  .tags li { background:rgba(74,163,224,.1);  color:#4aa3e0; border-color:rgba(74,163,224,.2); }
.violet{ --a:#9b7fe8; } .violet .tags li{ background:rgba(155,127,232,.1); color:#9b7fe8; border-color:rgba(155,127,232,.2); }
.amber { --a:#f0a832; } .amber .tags li { background:rgba(240,168,50,.1);  color:#f0a832; border-color:rgba(240,168,50,.2); }
.rose  { --a:#e86f8a; } .rose  .tags li { background:rgba(232,111,138,.1); color:#e86f8a; border-color:rgba(232,111,138,.2); }
.green { --a:#4cc57e; } .green .tags li { background:rgba(76,197,126,.1);  color:#4cc57e; border-color:rgba(76,197,126,.2); }
.sky   { --a:#38bdf8; } .sky   .tags li { background:rgba(56,189,248,.1);  color:#38bdf8; border-color:rgba(56,189,248,.2); }
.slate { --a:#94a3b8; } .slate .tags li { background:rgba(148,163,184,.1); color:#94a3b8; border-color:rgba(148,163,184,.2); }

/* FOOTER */
.footer { text-align:center; padding:20px 40px 36px; border-top:1px solid rgba(61,214,192,.1); color:#4a6a80; font-size:.8rem; }
.footer span { color:#3dd6c0; }
