﻿h1,h3,h4,p {
  margin:0
}

/* Blog post: collapses the gap between breadcrumb section and article to 24px */
section.blog-breadcrumb {
  padding-bottom: 0;
}

section.blog-breadcrumb > * > * {
  margin-bottom: 0;
}

section.blog-breadcrumb + section {
  padding-top: 1.5rem;
}

/* Blog post article content styling */
main > section:nth-of-type(2) {
  max-width:52rem;
  margin-left:auto;
  margin-right:auto;
  padding-left:1rem;
  padding-right:1rem;
}

@media (min-width:640px) {
  main > section:nth-of-type(2) {
    padding-left:1.5rem;
    padding-right:1.5rem;
  }
}

main > section:nth-of-type(2) h1 {
  font-size:2.25rem;
  line-height:2.5rem;
  font-weight:700;
  color:hsl(var(--foreground));
  margin-top:0;
  margin-bottom:1.5rem;
  letter-spacing:-0.02em;
}

@media (min-width:640px) {
  main > section:nth-of-type(2) h1 {
    font-size:3rem;
    line-height:3.5rem;
  }
}

main > section:nth-of-type(2) h2 {
  font-size:1.875rem;
  line-height:2.25rem;
  font-weight:700;
  color:hsl(var(--foreground));
  margin-top:2rem;
  margin-bottom:1.25rem;
  letter-spacing:-0.015em;
}

@media (min-width:640px) {
  main > section:nth-of-type(2) h2 {
    font-size:2rem;
    line-height:2.5rem;
    margin-top:2.5rem;
  }
}

main > section:nth-of-type(2) h3 {
  font-size:1.25rem;
  line-height:1.75rem;
  font-weight:700;
  color:hsl(var(--foreground));
  margin-top:1.5rem;
  margin-bottom:1rem;
}

main > section:nth-of-type(2) p {
  font-size:1rem;
  line-height:1.625rem;
  color:hsl(var(--muted-foreground));
  margin-bottom:1.25rem;
}

main > section:nth-of-type(2) ul {
  list-style:disc;
  margin-left:1.5rem;
  margin-bottom:1.25rem;
  padding:0;
}

main > section:nth-of-type(2) ul li {
  color:hsl(var(--muted-foreground));
  line-height:1.625rem;
  margin-bottom:0.5rem;
}

main > section:nth-of-type(2) strong {
  font-weight:600;
  color:hsl(var(--foreground));
}

main > section:nth-of-type(2) a {
  color:hsl(var(--primary));
  text-decoration:none;
  transition-property:color,text-decoration;
  transition-duration:.15s;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
}

main > section:nth-of-type(2) a:hover {
  text-decoration:underline;
  color:hsl(var(--primary)/.9);
}

/* Comparison table inside blog posts */
main > section:nth-of-type(2) table {
  width:100%;
  border-collapse:collapse;
  margin-top:1.25rem;
  margin-bottom:1.5rem;
  font-size:.9375rem;
  line-height:1.625rem;
  overflow:hidden;
  border-radius:var(--radius);
  border:1px solid hsl(var(--border));
}

main > section:nth-of-type(2) table th {
  text-align:left;
  font-weight:600;
  font-size:.875rem;
  color:hsl(var(--foreground));
  background-color:hsl(var(--muted));
  padding:.75rem 1rem;
  border-bottom:1px solid hsl(var(--border));
}

main > section:nth-of-type(2) table td {
  padding:.75rem 1rem;
  color:hsl(var(--muted-foreground));
  border-bottom:1px solid hsl(var(--border));
  vertical-align:top;
}

main > section:nth-of-type(2) table tr:last-child td {
  border-bottom:none;
}

main > section:nth-of-type(2) table tr:nth-child(even) td {
  background-color:hsl(var(--muted)/.4);
}

/* Inline code */
main > section:nth-of-type(2) code {
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-size:.875em;
  background-color:hsl(var(--muted));
  color:hsl(var(--foreground));
  border:1px solid hsl(var(--border));
  border-radius:.3em;
  padding:.15em .4em;
  white-space:nowrap;
}

/* Code blocks */
main > section:nth-of-type(2) pre {
  position:relative;
  background-color:hsl(222 47% 11%);
  border:1px solid hsl(var(--border));
  border-radius:var(--radius);
  padding:1.25rem 1.5rem;
  overflow-x:auto;
  margin-top:1rem;
  margin-bottom:1.25rem;
}

main > section:nth-of-type(2) pre code {
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-size:.875rem;
  line-height:1.7;
  color:hsl(210 40% 88%);
  background:none;
  border:none;
  border-radius:0;
  padding:0;
  white-space:pre;
}

/* Step-by-step ordered lists */
main > section:nth-of-type(2) ol {
  list-style:none;
  counter-reset:step-counter;
  margin-bottom:1.25rem;
  padding:0;
}

main > section:nth-of-type(2) ol li {
  counter-increment:step-counter;
  display:flex;
  align-items:baseline;
  gap:.75rem;
  color:hsl(var(--muted-foreground));
  line-height:1.625;
  margin-bottom:.625rem;
}

main > section:nth-of-type(2) ol li::before {
  content:counter(step-counter);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  width:1.5rem;
  height:1.5rem;
  border-radius:9999px;
  background-color:hsl(var(--primary)/.12);
  color:hsl(var(--primary));
  font-size:.75rem;
  font-weight:700;
  line-height:1;
  margin-top:.1em;
}

/* Resource cards: avoid grid row stretch making siblings look expanded */
[data-resource-grid] {
  align-items:flex-start;
}

/* Expanded resource accordion content */
.resource-expanded {
  white-space:normal;
}

/* Consistent spacing between blocks (p/ol/ul/etc.) */
.resource-expanded > * + * {
  margin-top:.75rem;
}

.resource-expanded ol,
.resource-expanded ul {
  margin:0;
  padding-left:1.25rem;
}

.resource-expanded ol {
  list-style:decimal;
}

.resource-expanded ul {
  list-style:disc;
}

.resource-expanded li + li {
  margin-top:.5rem;
}

.resource-expanded li {
  line-height:1.6;
}

.h-40 {
  height:10rem
}

.cursor-pointer {
  cursor:pointer
}

.leading-snug {
  line-height:1.375
}

.text-primary\/20 {
  color:hsl(var(--primary)/.2)
}
