/* Local PrimeFlex subset used by this portfolio */
.flex {
  display: flex;
}

.grid {
  display: flex;
  flex-wrap: wrap;
}

.grid-nogutter {
  margin: 0;
}

.flex-column {
  flex-direction: column;
}

.flex-row {
  flex-direction: row;
}

.align-items-center {
  align-items: center;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-between {
  justify-content: space-between;
}

.w-full {
  width: 100%;
}

.min-w-full {
  min-width: 100%;
}

.min-h-full {
  min-height: 100%;
}

.min-h-screen {
  min-height: 100vh;
}

.fixed {
  position: fixed;
}

.top-0 {
  top: 0;
}

.z-6 {
  z-index: 6;
}

.cursor-pointer {
  cursor: pointer;
}

.no-underline {
  text-decoration: none;
}

.list-none {
  list-style: none;
}

.text-center {
  text-align: center;
}

.border-round-lg {
  border-radius: 0.5rem;
}

.p-0 {
  padding: 0;
}

.p-2 {
  padding: 0.5rem;
}

.pt-0 {
  padding-top: 0;
}

.pt-2 {
  padding-top: 0.5rem;
}

.pt-4 {
  padding-top: 1rem;
}

.pt-8 {
  padding-top: 2rem;
}

.pb-7 {
  padding-bottom: 1.75rem;
}

.pb-8 {
  padding-bottom: 2rem;
}

.pr-6 {
  padding-right: 1.5rem;
}

.mt-3 {
  margin-top: 0.75rem;
}

.mt-5 {
  margin-top: 1.25rem;
}

.mt-6 {
  margin-top: 1.5rem;
}

.mt-7 {
  margin-top: 1.75rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mb-2 {
  margin-bottom: 0.5rem;
}

.mb-4 {
  margin-bottom: 1rem;
}

.gap-2 {
  gap: 0.5rem;
}

.gap-3 {
  gap: 0.75rem;
}

.gap-4 {
  gap: 1rem;
}

.gap-5 {
  gap: 1.25rem;
}

.col {
  flex: 1 1 0;
}

.col-4 {
  width: 33.3333%;
}

.col-11 {
  width: 91.6667%;
}

.col-12 {
  width: 100%;
}

.text-sm {
  font-size: 0.875rem;
}

.text-base {
  font-size: 1rem;
}

.text-xl {
  font-size: 1.25rem;
}

.text-3xl {
  font-size: 1.875rem;
}

.text-5xl {
  font-size: 3rem;
}

.text-7xl {
  font-size: 4.5rem;
}

.text-gray-400 {
  color: #9ca3af;
}

.text-gray-500 {
  color: #6b7280;
}

@media (min-width: 576px) {
  .sm\:p-3 { padding: 0.75rem; }
  .sm\:col-6 { width: 50%; }
  .sm\:col-7 { width: 58.3333%; }
  .sm\:text-5xl { font-size: 3rem; }
  .sm\:pt-0 { padding-top: 0; }
}

@media (min-width: 768px) {
  .md\:flex-row { flex-direction: row; }
  .md\:col-4 { width: 33.3333%; }
  .md\:col-6 { width: 50%; }
  .md\:mb-2 { margin-bottom: 0.5rem; }
  .md\:pr-6 { padding-right: 1.5rem; }
  .md\:pt-0 { padding-top: 0; }
  .md\:pt-2 { padding-top: 0.5rem; }
  .md\:text-base { font-size: 1rem; }
  .md\:text-5xl { font-size: 3rem; }
  .md\:text-7xl { font-size: 4.5rem; }
  .md\:align-items-center { align-items: center; }
}

@media (min-width: 992px) {
  .lg\:text-center { text-align: center; }
  .lg\:justify-content-center { justify-content: center; }
  .lg\:col-4 { width: 33.3333%; }
}

@media (min-width: 1200px) {
  .xl\:hidden { display: none; }
  .xl\:flex-row { flex-direction: row; }
  .xl\:justify-content-between { justify-content: space-between; }
  .xl\:col-4 { width: 33.3333%; }
  .xl\:col-5 { width: 41.6667%; }
  .xl\:col-6 { width: 50%; }
  .xl\:text-sm { font-size: 0.875rem; }
}
