@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500&display=swap');

/* ============================================================
   TechDesk public marketing design system — scoped to .td-site
   (does NOT affect /admin). Blueprint: /app/design_guidelines.json
   ============================================================ */
.td-site{
  --td-bg:#F7F8FC; --td-surface:#FFFFFF; --td-text:#172036; --td-muted:#586277;
  --td-brand:#6D28D9; --td-brand-hover:#5B21B6; --td-tint:#F2EDFF; --td-border:#DEE4ED;
  --td-accent:#0F766E;
  --td-shadow-card:0 4px 20px -2px rgba(23,32,54,.05), 0 2px 6px -2px rgba(23,32,54,.03);
  --td-shadow-hover:0 16px 32px -4px rgba(23,32,54,.08), 0 6px 12px -3px rgba(23,32,54,.04);
  font-family:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  color:var(--td-text); background:var(--td-bg); -webkit-font-smoothing:antialiased;
}
.td-site h1,.td-site h2,.td-site h3{ color:var(--td-text); letter-spacing:-.022em; }
.td-site h1{ font-weight:800; line-height:1.1; font-size:clamp(2.25rem,5vw,3.75rem); }
.td-site h2{ font-weight:800; line-height:1.18; font-size:clamp(1.75rem,3.2vw,2.5rem); }
.td-site p{ color:var(--td-muted); }
.td-site a{ text-decoration:none; }
.td-site section{ scroll-margin-top:88px; }
.td-site .text-blue-600{ color:var(--td-brand) !important; }

/* ---------- Header ---------- */
.td-site > header{
  background:rgba(255,255,255,.95) !important; backdrop-filter:saturate(1.4) blur(10px);
  border-bottom:1px solid var(--td-border) !important; box-shadow:none !important;
}

/* ---------- HERO: airy, left-aligned ---------- */
.td-site section:first-of-type{ background:
  radial-gradient(60% 90% at 12% 0%, #F2EDFF 0%, rgba(242,237,255,0) 60%),
  radial-gradient(50% 80% at 100% 10%, #E6FBF5 0%, rgba(230,251,245,0) 55%),
  var(--td-bg) !important; padding-top:5.5rem !important; padding-bottom:5.5rem !important; }
.td-site section:first-of-type .container{ text-align:left !important; max-width:1120px; }
.td-site section:first-of-type h1{ margin-bottom:1.25rem; }
.td-site section:first-of-type .text-2xl{ font-size:1.2rem !important; line-height:1.6; color:var(--td-muted) !important; max-width:60ch; margin-left:0 !important; }
.td-site section:first-of-type .flex.justify-center{ justify-content:flex-start !important; }
/* hide muddy decorative blobs entirely for a calm hero */
.td-site section:first-of-type .animate-blob{ display:none !important; }

/* ---------- Buttons ---------- */
.td-site a > button{
  border-radius:12px !important; font-weight:600 !important; padding:.9rem 1.6rem !important;
  box-shadow:0 1px 2px rgba(23,32,54,.06) !important;
  transition:transform .15s ease, box-shadow .2s ease, background-color .2s ease !important;
}
.td-site a > button:hover{ transform:translateY(-1px); box-shadow:0 10px 22px -6px rgba(109,40,217,.45) !important; }

/* ---------- Section headings block ---------- */
.td-site section .text-center.mb-16,
.td-site section .text-center.mb-12,
.td-site section .text-center.mb-14,
.td-site section .text-center.mb-10{ margin-bottom:3.5rem; }
.td-site section h2 + p,
.td-site .text-center p{ color:var(--td-muted); }

/* ---------- Cards (features / rozcestník / steps) ---------- */
.td-site .border-slate-200{
  border:1px solid var(--td-border) !important; border-radius:18px !important;
  background:var(--td-surface); box-shadow:var(--td-shadow-card);
  transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease !important;
  overflow:hidden;
}
.td-site .border-slate-200 [class*="p-"], .td-site .border-slate-200 > div{ }
.td-site a:hover > .border-slate-200,
.td-site .border-slate-200:hover{
  box-shadow:var(--td-shadow-hover); transform:translateY(-4px);
  border-color:var(--td-brand) !important;
}
/* icon chip */
.td-site .w-14.h-14.rounded-xl{
  border-radius:14px !important; background:var(--td-tint) !important;
}
.td-site .w-14.h-14.rounded-xl svg{ color:var(--td-brand) !important; }
/* card title + arrow affordance on linked cards */
.td-site a > .border-slate-200 [class*="CardTitle"],
.td-site a > * .text-xl{ transition:color .2s ease; }
.td-site a:hover .text-xl{ color:var(--td-brand); }
.td-site a[href^="/"] > .border-slate-200::after,
.td-site a[href^="/"] .border-slate-200::after{
  content:"Zjistit více →"; display:block; margin-top:1rem; padding:0 1.5rem 1.25rem;
  font-size:.85rem; font-weight:600; color:var(--td-brand);
}

/* ---------- Steps (numbered) ---------- */
.td-site .rounded-2xl{ border-radius:18px !important; }

/* ---------- Versions / deployment cards ---------- */
.td-site .rounded-xl,.td-site .rounded-2xl{ }

/* ---------- Forms ---------- */
.td-site input, .td-site textarea, .td-site select{
  border-radius:12px !important; border:1px solid var(--td-border) !important;
  background:#fff !important; color:var(--td-text) !important;
}
.td-site input:focus, .td-site textarea:focus{
  border-color:var(--td-brand) !important; box-shadow:0 0 0 3px var(--td-tint) !important; outline:none !important;
}

/* ---------- Footer ---------- */
.td-site footer{ background:#0E1526 !important; }
.td-site footer a{ opacity:.82; transition:opacity .2s ease; }
.td-site footer a:hover{ opacity:1; color:#fff; }

/* ---------- Section surface rhythm ---------- */
.td-site section{ padding-top:5.5rem; padding-bottom:5.5rem; }
@media (max-width:768px){
  .td-site section{ padding-top:3.25rem; padding-bottom:3.25rem; }
  .td-site section:first-of-type .container{ text-align:center !important; }
  .td-site section:first-of-type .flex.justify-center{ justify-content:center !important; }
}
