@charset "UTF-8";

/* ============================================
   Color Utilities — Lovable PHP Belém
   Usa CSS custom properties (Tailwind JIT cobre o resto)
   ============================================ */

.bg-primary {
  background: var(--primary);
}

.text-primary {
  color: var(--primary);
}

.border-ember {
  border-color: var(--primary);
}

.glow-ember-sm {
  box-shadow: var(--shadow-ember-sm);
}

/* ============================================
   Helpers — Lovable PHP Belém
   ============================================ */

.course-description {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: 4.5em;
  line-height: 1.5;
}

.course-description p {
  display: inline;
}

.course-description br {
  display: none;
}

/* ============================
   Scroll Reveal (Lovable)
   ============================ */

[data-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-reveal=fade] {
  transform: none;
}

[data-reveal=left] {
  transform: translateX(-32px);
}

[data-reveal=right] {
  transform: translateX(32px);
}

[data-reveal=zoom] {
  transform: scale(0.94);
}

[data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  [data-reveal] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* ============================
   Glow (fallback)
   ============================ */

.glow-ember-sm {
  box-shadow: var(--shadow-ember-sm);
}

/* ============================
   Pulse glow (page loader)
   ============================ */

@keyframes pulse-glow {
  0%, 100% {
    opacity: 0.6;
    transform: scale(1);
  }

  50% {
    opacity: 1;
    transform: scale(1.15);
  }
}

/* ============================
   Dots drift (red banner)
   ============================ */

@keyframes dots-drift {
  0% {
    background-position: 0% 0%, 0% 0%;
  }

  100% {
    background-position: 100% 100%, 140% 60%;
  }
}

.animate-dots-drift {
  animation: dots-drift 20s linear infinite alternate;
}

/* ============================
   Custom Scrollbar
   ============================ */

* {
  scrollbar-width: thin;
  scrollbar-color: var(--primary) transparent;
}

*::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

*::-webkit-scrollbar-track {
  background: transparent;
}

*::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--primary), var(--primary-glow));
  border-radius: 999px;
  border: 2px solid var(--background);
}

/* ============================
   Scanlines
   ============================ */

.scanlines-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: var(--gradient-scan);
  mix-blend-mode: overlay;
  opacity: 0.4;
}

@keyframes scan {
  from {
    background-position: 0 0;
  }

  to {
    background-position: 0 100%;
  }
}

.animate-scan {
  animation: scan 8s linear infinite;
}

/* ============================
   Marquee (seamless tech stack)
   ============================ */

.marquee {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  gap: 2rem;
  animation: marquee 40s linear infinite;
}

.marquee-mask {
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
}

.w-90 {
  width: 90% !important;
}

/* ============================
   Glows
   ============================ */

.glow-primary {
  box-shadow: 0 0 40px -8px hsl(var(--primary)/0.35);
}

.label-mono {
  font-family: var(--font-mono);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-primary);
  font-size: 0.72rem;
}

.surface-panel button{
  background-color: var(--surface);
  color: var(--foreground);
}

.container-page{
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 1440px;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

@media (min-width: 1536px){
  .container-page{
    padding-left: 0px;
    padding-right: 0px;
  }
}

/* ============================================
   Fonts — Lovable PHP Belém
   ============================================

   Google Fonts (variable) loaded via <link> in html.html.twig
   with preconnect hints for optimal performance.
   This avoids @import which blocks rendering.
*/

/* ============================================
   Design Tokens — Lovable PHP Belém (dark-first)
   ============================================ */

:root {
  --radius: 0.75rem;
  --radius-xl: calc(var(--radius) + 4px);
  /* Dark theme (default) */
  --background: oklch(0.14 0.02 265);
  --foreground: oklch(0.97 0.005 260);
  --surface: oklch(0.17 0.022 265);
  --surface-2: oklch(0.21 0.028 265);
  --card: oklch(0.17 0.022 265);
  --card-foreground: oklch(0.97 0.005 260);
  --popover: oklch(0.17 0.022 265);
  --popover-foreground: oklch(0.97 0.005 260);
  /* Signature red — ember */
  --primary: oklch(0.66 0.24 22);
  --primary-foreground: oklch(0.99 0 0);
  --primary-glow: oklch(0.72 0.22 18);
  --secondary: oklch(0.24 0.03 265);
  --secondary-foreground: oklch(0.97 0.005 260);
  --muted: oklch(0.22 0.028 265);
  --muted-foreground: oklch(0.68 0.02 260);
  --accent: oklch(0.24 0.03 265);
  --accent-foreground: oklch(0.97 0.005 260);
  --amber-glow: oklch(0.78 0.18 68);
  --destructive: oklch(0.6 0.24 25);
  --destructive-foreground: oklch(0.99 0 0);
  --border: oklch(1 0 0 / 8%);
  --input: oklch(1 0 0 / 12%);
  --ring: oklch(0.66 0.24 22 / 60%);
  /* Gradients */
  --gradient-ember: linear-gradient(135deg, oklch(0.66 0.24 22), oklch(0.72 0.22 18));
  --gradient-radial-red: radial-gradient(circle at 50% 20%, oklch(0.66 0.24 22 / 35%) 0%, transparent 55%);
  --gradient-hero-overlay: linear-gradient(180deg, oklch(0.14 0.02 265 / 30%) 0%, oklch(0.14 0.02 265 / 70%) 55%, oklch(0.14 0.02 265) 100%);
  --gradient-scan: repeating-linear-gradient(0deg, oklch(1 0 0 / 0%) 0px, oklch(1 0 0 / 0%) 2px, oklch(1 0 0 / 2%) 3px, oklch(1 0 0 / 0%) 4px);
  /* Shadows */
  --shadow-ember: 0 20px 60px -20px oklch(0.66 0.24 22 / 55%);
  --shadow-ember-sm: 0 10px 30px -10px oklch(0.66 0.24 22 / 45%);
  --shadow-panel: 0 30px 80px -30px oklch(0 0 0 / 60%), inset 0 1px 0 0 oklch(1 0 0 / 6%);
  --shadow-glow-inset: inset 0 0 0 1px oklch(0.66 0.24 22 / 30%), inset 0 0 40px oklch(0.66 0.24 22 / 15%);
  /* Font families */
  --font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
  --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;
  --font-family: var(--font-sans);
  /* Spacing */
  --spacing: 0.25rem;
}

/* ============================================
   Light Theme
   ============================================ */

html.dark {
  color-scheme: dark;
}

html.light {
  color-scheme: light;
  --background: oklch(0.985 0.003 260);
  --foreground: oklch(0.18 0.02 265);
  --surface: oklch(0.965 0.006 260);
  --surface-2: oklch(0.93 0.008 260);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.18 0.02 265);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.18 0.02 265);
  --primary: oklch(0.6 0.24 24);
  --primary-foreground: oklch(0.99 0 0);
  --primary-glow: oklch(0.68 0.22 20);
  --secondary: oklch(0.94 0.008 260);
  --secondary-foreground: oklch(0.18 0.02 265);
  --muted: oklch(0.94 0.008 260);
  --muted-foreground: oklch(0.42 0.02 260);
  --accent: oklch(0.94 0.008 260);
  --accent-foreground: oklch(0.18 0.02 265);
  --border: oklch(0.18 0.02 265 / 12%);
  --input: oklch(0.18 0.02 265 / 18%);
  --ring: oklch(0.6 0.24 24 / 45%);
  --gradient-hero-overlay: linear-gradient(180deg, oklch(0.985 0.003 260 / 20%) 0%, oklch(0.985 0.003 260 / 65%) 55%, oklch(0.985 0.003 260) 100%);
  --gradient-scan: repeating-linear-gradient(0deg, oklch(0 0 0 / 0%) 0px, oklch(0 0 0 / 0%) 2px, oklch(0 0 0 / 3%) 3px, oklch(0 0 0 / 0%) 4px);
  --shadow-panel: 0 30px 80px -30px oklch(0.18 0.02 265 / 18%), inset 0 1px 0 0 oklch(1 0 0 / 60%);
}

/* ============================================
   SCSS Helpers
   ============================================ */

/* ============================================
   Base Reset — Lovable PHP Belém
   ============================================ */

/* ============================================
   Typography — Lovable PHP Belém
   ============================================ */

.messages {
  border-left: 5px solid;
  border-radius: 6px;
  padding: 16px 20px;
  margin: 16px auto;
  max-width: 1536px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: flex-start;
  gap: 12px;
  position: relative;
  animation: fadeIn 0.3s ease-in-out;
}

.messages__icon {
  flex-shrink: 0;
}

.messages__icon svg {
  width: 24px;
  height: 24px;
}

.messages__container {
  display: flex;
  gap: 24px;
}

.messages__content {
  flex: 1;
  font-size: 14px;
  line-height: 1.5;
}

.messages__content a {
  text-decoration: underline;
  font-weight: 500;
}

.messages__button {
  margin-left: auto;
}

.messages__button button {
  background: none;
  border: none;
  cursor: pointer;
  opacity: 0.6;
  transition: 0.2s;
}

.messages__button button:hover {
  opacity: 1;
}

.messages--status {
  background-color: #e6f9f0;
  border-color: #28a745;
  color: #155724;
  max-width: 1440px;
}

.messages--status a {
  color: #28a745;
}

.messages--error {
  background-color: #fdecea;
  border-color: #dc3545;
  color: #721c24;
}

.messages--error a {
  color: #dc3545;
}

.messages--warning {
  background-color: #fff4e5;
  border-color: #ffc107;
  color: #856404;
}

.messages--warning a {
  color: #ffc107;
}

.messages-top {
  position: fixed;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  max-width: 800px;
  z-index: 9999;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.messages__button {
  position: absolute;
  top: 8px;
  right: 10px;
}

.messages__close {
  width: 28px;
  height: 28px;
  border: none;
  background: transparent;
  cursor: pointer;
  position: relative;
  color: #000;
  margin-top: 10px;
}

.messages__close::before, .messages__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  background-color: currentColor;
}

.messages__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.messages__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.messages__close:hover {
  opacity: 0.7;
}

/* ==========================================================================
   FAQ Accordion (Lovable)
   ========================================================================== */

[data-accordion-item] .faq-trigger {
  cursor: pointer;
}

[data-accordion-item] .faq-trigger[aria-expanded=true] .faq-icon {
  transform: rotate(180deg);
  color: var(--primary);
}

[data-accordion-item] .faq-icon {
  transition: transform 0.3s ease, color 0.3s ease;
}

[data-accordion-item] .faq-content {
  animation: faq-slide-down 0.3s ease;
}

[data-accordion-item] .faq-content[hidden] {
  display: none;
}

@keyframes faq-slide-down {
  from {
    opacity: 0;
    max-height: 0;
  }

  to {
    opacity: 1;
    max-height: 500px;
  }
}

/* ============================================
   Badges
   ============================================ */

.badge {
  display: inline-flex;
  padding: 0.25rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.75rem;
}

.badge--primary {
  background: color-mix(in oklab, var(--primary) 10%, transparent);
  color: var(--primary);
}

.paragraph--type--section-banner.banner-type-default {
  overflow: hidden;
}

.paragraph--type--section-banner.banner-type-default .banner-cta {
  position: relative;
  overflow: hidden;
  background-color: var(--surface);
  border: 1px solid var(--border);
  border-radius: calc(var(--radius) + 4px);
  padding: 2.5rem 1rem;
  text-align: center;
}

@media (min-width: 768px) {
  .paragraph--type--section-banner.banner-type-default .banner-cta {
    padding: 4rem;
  }
}

.paragraph--type--section-banner.banner-type-default .banner-cta {
  box-shadow: var(--shadow-glow-inset);
}

.paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__glow {
  position: absolute;
  inset: 0;
  opacity: 0.7;
  background: var(--gradient-radial-red);
}

.paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__scanlines {
  position: absolute;
  inset: 0;
  background-image: var(--gradient-scan);
  opacity: 0.3;
}

.paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__body {
  position: relative;
}

.paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__icon {
  margin: 0 auto 1rem;
  height: 2rem;
  width: 2rem;
  color: var(--primary);
}

.paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__title {
  font-family: var(--font-display);
  font-size: 1.875rem;
  font-weight: 700;
  max-width: 48rem;
  margin: 0 auto;
  line-height: 1.2;
}

@media (min-width: 768px) {
  .paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__title {
    font-size: 3rem;
  }
}

.paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__desc {
  margin-top: 1rem;
  max-width: 36rem;
  margin-left: auto;
  margin-right: auto;
  color: var(--muted-foreground);
}

.paragraph--type--section-banner.banner-type-default .banner-cta .banner-cta__actions {
  margin-top: 2rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
}

.paragraph--type--section-banner.banner-type-slider{
  position: relative;
  overflow: hidden;
}

#block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider.group.is-open > ul {
    display: flex;
  }
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__bg{
  position: absolute;
  inset: 0px;
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__bg img, .paragraph--type--section-banner.banner-type-slider .banner-slider__bg picture, .paragraph--type--section-banner.banner-type-slider .banner-slider__bg .media, .paragraph--type--section-banner.banner-type-slider .banner-slider__bg .field, .paragraph--type--section-banner.banner-type-slider .banner-slider__bg .field__item{
  position: absolute;
  inset: 0px;
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.7;
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__bg .field,
.paragraph--type--section-banner.banner-type-slider .banner-slider__bg .field__item,
.paragraph--type--section-banner.banner-type-slider .banner-slider__bg .media,
.paragraph--type--section-banner.banner-type-slider .banner-slider__bg .contextual-region {
  position: absolute;
  inset: 0;
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__overlay{
  position: absolute;
  inset: 0px;
  background: var(--gradient-hero-overlay);
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__scanlines{
  pointer-events: none;
  position: absolute;
  inset: 0px;
  opacity: 0.4;
  mix-blend-mode: overlay;
  background-image: var(--gradient-scan);
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__content{
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 1440px;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

#block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider .banner-slider__content.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider .banner-slider__content.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider .banner-slider__content.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.paragraph--type--section-banner.banner-type-slider .banner-slider__content.group.is-open > ul {
    display: flex;
  }
}

@media (min-width: 1280px){
  .paragraph--type--section-banner.banner-type-slider .banner-slider__content{
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__inner {
  max-width: 48rem;
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__tag {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border-radius: 9999px;
  padding: 0.25rem 0.75rem;
  font-size: 0.75rem;
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 0.2em;
  border: 1px solid color-mix(in oklab, var(--primary) 40%, transparent);
  background: color-mix(in oklab, var(--primary) 10%, transparent);
  color: var(--primary);
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__dot {
  height: 0.375rem;
  width: 0.375rem;
  border-radius: 9999px;
  background: var(--primary);
  animation: pulse-ember 2.4s ease-in-out infinite;
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__title {
  margin-top: 1.5rem;
  font-family: var(--font-display);
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 0.95;
  letter-spacing: -0.02em;
}

@media (min-width: 640px) {
  .paragraph--type--section-banner.banner-type-slider .banner-slider__title {
    font-size: 3.75rem;
  }
}

@media (min-width: 1024px) {
  .paragraph--type--section-banner.banner-type-slider .banner-slider__title {
    font-size: 4.5rem;
  }
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__desc {
  margin-top: 1.5rem;
  max-width: 36rem;
  font-size: 1.125rem;
  line-height: 1.625;
  color: var(--muted-foreground);
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__actions {
  margin-top: 2.5rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border-radius: 9999px;
  border: 1px solid var(--border);
  padding: 0.75rem 1.5rem;
  font-weight: 500;
  background: color-mix(in oklab, var(--background) 40%, transparent);
  backdrop-filter: blur(4px);
  transition: all 0.2s ease;
}

.paragraph--type--section-banner.banner-type-slider .banner-slider__btn-secondary:hover {
  background: color-mix(in oklab, var(--foreground) 5%, transparent);
}

.paragraph--type--section-banner.banner-type-default_with_image .banner-image-grid picture, .paragraph--type--section-banner.banner-type-default_with_image .banner-image-grid img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* ============================================
   Button Component — Lovable PHP Belém
   ============================================ */

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
  text-decoration: none;
  outline: none;
  position: relative;
  padding: 1rem 1.5rem;
}

.btn:hover {
  text-decoration: none;
}

.btn svg {
  pointer-events: none;
  flex-shrink: 0;
}

.btn svg:not([class*=size-]) {
  width: 1rem;
  height: 1rem;
}

.btn:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px var(--ring);
}

.btn:disabled {
  pointer-events: none;
  opacity: 0.5;
}

/* Variants */

.btn-primary {
  background: var(--gradient-ember);
  color: var(--primary-foreground);
}

.btn-primary:hover:not(:disabled) {
  filter: brightness(1.1);
}

.btn-outline {
  border: 1px solid var(--border);
  background-color: transparent;
  color: var(--foreground);
}

.btn-outline:hover:not(:disabled) {
  background-color: var(--accent);
  color: var(--accent-foreground);
}

.btn-destructive {
  background-color: var(--destructive);
  color: var(--destructive-foreground);
}

.btn-destructive:hover:not(:disabled) {
  filter: brightness(1.1);
}

.btn-ghost {
  background-color: transparent;
  color: var(--foreground);
}

.btn-ghost:hover:not(:disabled) {
  background-color: var(--accent);
  color: var(--accent-foreground);
}

.btn-link {
  background-color: transparent;
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 0.25rem;
  padding: 0;
}

.btn-link:hover:not(:disabled) {
  text-decoration: underline;
  text-underline-offset: 0.375rem;
}

/* Sizes */

.btn-sm {
  height: 2rem;
  border-radius: 0.375rem;
  gap: 0.375rem;
  padding: 0 0.75rem;
}

.btn-lg {
  height: 2.5rem;
  border-radius: 0.375rem;
  padding: 0 1.5rem;
}

.btn-icon {
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  border-radius: 0.375rem;
}

/* Loading */

.btn.is-loading {
  pointer-events: none;
  opacity: 0.7;
}

.btn.is-loading::after {
  content: "";
  display: inline-block;
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.5rem;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spin 0.6s linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }

  .btn.is-loading::after {
    animation: none;
  }
}

/* Rounded-full variant (Lovable CTA) */

.btn-rounded {
  border-radius: 9999px;
}

.columns-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.columns-wrapper .column {
  text-align: center;
  color: #555;
  border-bottom: 1px solid #ccc;
  border-right: none;
  padding: 24px;
}

.columns-wrapper .column:last-child {
  border-bottom: none;
}

.columns-wrapper .column h4 {
  font-weight: bold;
  margin: 0 0 1.5rem 0;
  font-style: italic;
  font-size: 28px;
}

.columns-wrapper .column p {
  font-size: 18px;
  margin: 0;
  font-style: italic;
  line-height: 1.6;
}

@media (min-width: 768px) {
  .columns-wrapper {
    gap: 0;
  }

  .columns-wrapper .column {
    border-bottom: none;
    border-right: 1px solid #ccc;
    margin-bottom: 0;
  }

  .columns-wrapper .column h4 {
    font-size: 32px;
  }

  .columns-wrapper[data-columns="2"] {
    grid-template-columns: repeat(2, 1fr);
  }

  .columns-wrapper[data-columns="2"] .column:nth-child(2n) {
    border-right: none;
  }

  .columns-wrapper[data-columns="3"] {
    grid-template-columns: repeat(3, 1fr);
  }

  .columns-wrapper[data-columns="3"] .column:nth-child(3n) {
    border-right: none;
  }

  .columns-wrapper[data-columns="4"] {
    grid-template-columns: repeat(4, 1fr);
  }

  .columns-wrapper[data-columns="4"] .column:nth-child(4n) {
    border-right: none;
  }

  .columns-wrapper[data-columns="5"], .columns-wrapper[data-columns="6"] {
    grid-template-columns: repeat(3, 1fr);
  }

  .columns-wrapper[data-columns="5"] .column:nth-child(3n), .columns-wrapper[data-columns="6"] .column:nth-child(3n) {
    border-right: none;
  }

  .columns-wrapper[data-columns="5"] .column:nth-child(4) {
    grid-column: 2;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
  }

  .columns-wrapper[data-columns="5"] .column:nth-child(5) {
    grid-column: 3;
    border-right: none;
  }
}

/* ============================================
   Cards variations
   ============================================ */

.paragraph--type--card.card-type-big-numbers{
  border-width: 1px;
  border-color: rgb(255 255 255 / 0.1);
  padding: 1.5rem;
}

@media (min-width: 1024px) {
  .paragraph--type--card.card-type-big-numbers {
    padding: 2rem;
  }
}

.paragraph--type--card.card-type-big-numbers {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.paragraph--type--card.card-type-big-numbers .card-icon {
  display: grid;
  place-items: center;
  height: 2.75rem;
  width: 2.75rem;
  border-radius: 0.5rem;
  flex-shrink: 0;
  background: color-mix(in oklab, var(--primary) 10%, transparent);
  color: var(--primary);
  box-shadow: var(--shadow-glow-inset);
}

.paragraph--type--card.card-type-big-numbers .card-icon svg {
  height: 1.25rem;
  width: 1.25rem;
}

.paragraph--type--card.card-type-big-numbers .card-value {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
}

@media (min-width: 1024px) {
  .paragraph--type--card.card-type-big-numbers .card-value {
    font-size: 1.875rem;
  }
}

.paragraph--type--card.card-type-big-numbers .card-label {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: var(--font-mono);
  color: var(--muted-foreground);
}

.paragraph--type--card.card-type .title-line {
  display: none;
}

.paragraph--type--card.card-type-icon{
  position: relative;
  border-radius: var(--radius);
  border-width: 1px;
  border-color: var(--border);
  background-color: var(--card);
  padding: 2rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

#block-front-theme-main-menu li.paragraph--type--card.card-type-icon.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.paragraph--type--card.card-type-icon.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.paragraph--type--card.card-type-icon.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.paragraph--type--card.card-type-icon.group.is-open > ul {
    display: flex;
  }
}

.paragraph--type--card.card-type-icon:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  border-color: var(--accent);
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.paragraph--type--card.card-type-icon .icon{
  margin-bottom: 1.5rem;
  display: flex;
  height: 3rem;
  width: 3rem;
  align-items: center;
  justify-content: center;
  border-radius: calc(var(--radius) - 2px);
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
  color: var(--primary-foreground);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon .icon.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .flex.paragraph--type--card.card-type-icon .icon {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon .icon.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--icon-contact-link-component .flex.paragraph--type--card.card-type-icon .icon > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.group:hover .paragraph--type--card.card-type-icon .icon{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
  color: var(--accent-foreground);
}

.paragraph--type--card.card-type-icon .icon svg{
  height: 2rem;
  width: 2rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.paragraph--type--card.card-type-icon .title {
  margin-bottom: 0.75rem;
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 600;
  letter-spacing: -0.025em;
  color: var(--foreground);
}

.paragraph--type--card.card-type-icon .subtitle{
  margin-bottom: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(82 82 82 / var(--tw-text-opacity));
}

.paragraph--type--card.card-type-icon .title-line{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
  display: block;
}

.paragraph--type--card.card-type-icon .content-text{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon .content-text.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon .content-text.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--card.card-type-icon .content-text p{
  line-height: 1.625;
  color: var(--muted-foreground);
  color: rgb(255 255 255 / 0.8);
}

.card-testmonial .paragraph--type--card.card-type-icon .content-text p {
  font-size: 14px;
  line-height: 1.6;
}

.card-testmonial .paragraph--type--card.card-type-icon .content-text p p {
  position: relative;
  font-style: italic;
  line-height: 1.8;
  padding: 0 30px;
  text-align: center;
  font-size: 1.125rem;
}

.card-testmonial .paragraph--type--card.card-type-icon .content-text p p::before {
  content: "“";
  position: absolute;
  left: 0;
  top: -10px;
  font-family: Georgia, serif;
  font-size: 4rem;
  color: var(--primary);
  opacity: 0.3;
  line-height: 1;
}

.card-testmonial .paragraph--type--card.card-type-icon .content-text p p::after {
  content: "”";
  position: absolute;
  right: 0;
  bottom: -40px;
  font-family: Georgia, serif;
  font-size: 4rem;
  color: var(--primary);
  opacity: 0.3;
  line-height: 1;
}

.paragraph--type--card.card-type-icon .content-text p {
  color: inherit;
}

.paragraph--type--card.card-type-image-top{
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: var(--radius);
  background-color: var(--card);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 500ms;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--card.card-type-image-top:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.paragraph--type--card.card-type-image-top .card-image{
  position: relative;
  aspect-ratio: 4/3;
  width: 100%;
  overflow: hidden;
  background-color: var(--muted);
}

#block-front-theme-main-menu li.paragraph--type--card.card-type-image-top .card-image.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.paragraph--type--card.card-type-image-top .card-image.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.paragraph--type--card.card-type-image-top .card-image.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.paragraph--type--card.card-type-image-top .card-image.group.is-open > ul {
    display: flex;
  }
}

.paragraph--type--card.card-type-image-top .card-content{
  display: flex;
  flex-direction: column;
  padding: 1.5rem;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top .card-content.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top .card-content.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

@media (min-width: 1024px){
  .paragraph--type--card.card-type-image-top .card-content{
    padding: 2rem;
  }
}

.paragraph--type--card.card-type-image-top .icon{
  margin-bottom: 1.5rem;
  display: flex;
  height: 3rem;
  width: 3rem;
  align-items: center;
  justify-content: center;
  border-radius: calc(var(--radius) - 2px);
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
  color: var(--primary-foreground);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top .icon.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .flex.paragraph--type--card.card-type-image-top .icon {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top .icon.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--icon-contact-link-component .flex.paragraph--type--card.card-type-image-top .icon > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.group:hover .paragraph--type--card.card-type-image-top .icon{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
  color: var(--accent-foreground);
}

.paragraph--type--card.card-type-image-top .icon svg{
  height: 2rem;
  width: 2rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.paragraph--type--card.card-type-image-top .title {
  margin-bottom: 0.75rem;
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 600;
  letter-spacing: -0.025em;
  color: var(--foreground);
}

.paragraph--type--card.card-type-image-top .subtitle{
  margin-bottom: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(82 82 82 / var(--tw-text-opacity));
}

.paragraph--type--card.card-type-image-top .title-line{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
  display: block;
}

.paragraph--type--card.card-type-image-top .content-text{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top .content-text.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-image-top .content-text.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--card.card-type-image-top .content-text p{
  line-height: 1.625;
  color: var(--muted-foreground);
  color: rgb(255 255 255 / 0.8);
}

.card-testmonial .paragraph--type--card.card-type-image-top .content-text p {
  font-size: 14px;
  line-height: 1.6;
}

.card-testmonial .paragraph--type--card.card-type-image-top .content-text p p {
  position: relative;
  font-style: italic;
  line-height: 1.8;
  padding: 0 30px;
  text-align: center;
  font-size: 1.125rem;
}

.card-testmonial .paragraph--type--card.card-type-image-top .content-text p p::before {
  content: "“";
  position: absolute;
  left: 0;
  top: -10px;
  font-family: Georgia, serif;
  font-size: 4rem;
  color: var(--primary);
  opacity: 0.3;
  line-height: 1;
}

.card-testmonial .paragraph--type--card.card-type-image-top .content-text p p::after {
  content: "”";
  position: absolute;
  right: 0;
  bottom: -40px;
  font-family: Georgia, serif;
  font-size: 4rem;
  color: var(--primary);
  opacity: 0.3;
  line-height: 1;
}

.paragraph--type--card.card-type-image-top .content-text p {
  color: inherit;
}

.paragraph--type--card.card-type-icon-contact{
  border-left-width: 4px;
  padding: 2rem;
}

.paragraph--type--card.card-type-icon-contact .icon{
  margin-bottom: 1rem;
  display: flex;
  height: 3rem;
  width: 3rem;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon-contact .icon.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .flex.paragraph--type--card.card-type-icon-contact .icon {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon-contact .icon.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--icon-contact-link-component .flex.paragraph--type--card.card-type-icon-contact .icon > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--card.card-type-icon-contact .icon svg{
  height: 2rem;
  width: 2rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.paragraph--type--card.card-type-icon-contact .title{
  margin-bottom: 0.5rem;
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  font-size: 1.25rem;
  line-height: 1.75rem;
  letter-spacing: -0.025em;
}

.paragraph--type--card.card-type-icon-contact .subtitle{
  margin-bottom: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(82 82 82 / var(--tw-text-opacity));
}

.paragraph--type--card.card-type-icon-contact .content-text{
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon-contact .content-text.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .paragraph--type--card.card-type-icon-contact .content-text.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--card.card-type-icon-contact .content-text p{
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: inherit;
}

.card-testmonial {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: 1px solid #fff5f5;
}

.card-testmonial .leading-relaxed {
  font-size: 14px;
  line-height: 1.6;
}

.card-testmonial .leading-relaxed p {
  position: relative;
  font-style: italic;
  line-height: 1.8;
  padding: 0 30px;
  text-align: center;
  font-size: 1.125rem;
}

.card-testmonial .leading-relaxed p::before {
  content: "“";
  position: absolute;
  left: 0;
  top: -10px;
  font-family: Georgia, serif;
  font-size: 4rem;
  color: var(--primary);
  opacity: 0.3;
  line-height: 1;
}

.card-testmonial .leading-relaxed p::after {
  content: "”";
  position: absolute;
  right: 0;
  bottom: -40px;
  font-family: Georgia, serif;
  font-size: 4rem;
  color: var(--primary);
  opacity: 0.3;
  line-height: 1;
}

.card-testmonial .field--name-field-image,
.card-testmonial .field--name-field-name,
.card-testmonial .field--name-field-profession {
  display: inline-block;
}

.card-testmonial .testimonial-author {
  display: flex;
  align-items: center;
}

.card-testmonial .field--name-field-name {
  font-weight: 600;
  font-size: 14px;
}

.card-testmonial .field--name-field-profession {
  font-size: 12px;
}

/* ============================================
   Course Cards (Figma inspired)
   ============================================ */

.course-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--background);
  overflow: hidden;
  border: 1px solid var(--border);
  transition: all 0.3s ease;
}

.course-card:hover {
  border-color: var(--foreground);
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.course-card .course-image {
  position: relative;
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--muted);
}

.course-card .course-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.5s ease;
}

.course-card .course-image:hover img {
  transform: scale(1.05);
}

.course-card .course-image .course-accent {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
}

.course-card .course-image .course-accent.accent-emerald {
  background: #065f46;
}

.course-card .course-image .course-accent.accent-red {
  background: #991b1b;
}

.course-card .course-image .course-accent.accent-amber {
  background: #d97706;
}

.course-card .course-content {
  flex: 1;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.course-card .course-content .course-meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  color: var(--muted-foreground);
  font-weight: 500;
}

.course-card .course-content .course-meta span:not(:last-child)::after {
  content: "·";
  margin-left: 0.5rem;
}

.course-card .course-content .course-title {
  font-size: 1.5rem;
  line-height: 1.2;
  color: var(--foreground);
}

.course-card .course-content .course-description {
  color: var(--muted-foreground);
  line-height: 1.6;
}

.course-card .course-content .course-link {
  align-self: flex-start;
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 4px;
  transition: color 0.3s ease;
  color: var(--primary);
}

.team-card {
  box-sizing: border-box;
}

.team-card .team-roles {
  font-size: 12px !important;
}

.team-card .team-roles .divider {
  margin: 0 4px;
}

.team-card .actions {
  margin-top: auto !important;
}

/* ============================
   Shared Swiper Styles
   ============================ */

/* --- Pagination dots (shared) --- */

.swiper-pagination {
  position: absolute;
  bottom: 20px;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  z-index: 10;
}

.swiper-pagination .swiper-pagination-bullet {
  width: 16px;
  height: 3px;
  border-radius: 0;
  background: var(--primary);
  opacity: 0.4;
  cursor: pointer;
  transition: background 0.3s ease, opacity 0.3s ease, transform 0.3s ease;
}

.swiper-pagination .swiper-pagination-bullet-active {
  opacity: 1;
  transform: scale(1.4);
}

/* --- Navigation arrows (shared) --- */

.swiper-button-prev,
.swiper-button-next {
  color: rgb(6, 95, 70, var(--primary));
  width: 10px;
  height: 20px;
  background: var(--card);
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
  padding: 10px 16px;
  position: absolute;
  top: auto !important;
  bottom: 0 !important;
  margin-top: 0;
  cursor: pointer;
  border: 1px solid var(--primary) !important;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  font-size: 18px;
  font-weight: bold;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
  background: rgba(0, 0, 0, 0.15) !important;
}

.swiper-button-prev svg,
.swiper-button-next svg {
  color: var(--primary);
}

.swiper-button-prev {
  left: inherit !important;
  margin-left: inherit !important;
  right: 60px !important;
}

.swiper-button-prev .swiper-navigation-icon {
  transform: scaleX(-1);
}

.swiper-button-next {
  left: auto !important;
  right: 30px;
}

@media (min-width: 680px) {
  .swiper-button-next {
    right: 30px;
  }
}

@media (min-width: 1220px) {
  .swiper-button-next {
    right: 35px;
  }
}

@media (min-width: 1440px) {
  .swiper-button-next {
    right: 2%;
  }
}

/* Remove default Swiper arrow icons when using custom buttons */

.swiper-button-lock {
  display: none;
}

/* ============================
   Team carousel
   ============================ */

.team-swiper {
  width: 100%;
  overflow: clip;
  position: relative;
}

.team-swiper:has(.team-pagination.swiper-pagination-lock) {
  padding-bottom: 0;
}

.team-swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
  margin-bottom: 5rem;
}

.team-swiper .swiper-slide {
  display: flex;
  flex-shrink: 0;
  height: auto;
}

.team-swiper .swiper-slide > * {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.team-swiper .team-pagination.swiper-pagination-lock {
  display: none !important;
}

/* ============================
   Testimonials carousel
   ============================ */

.testimonials-swiper {
  overflow: clip;
}

.testimonials-swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
}

.testimonials-swiper .swiper-slide {
  flex-shrink: 0;
  height: auto;
}

/* ============================
   Banner slider
   ============================ */

.banner-slider {
  position: relative;
  overflow: hidden;
}

.banner-slider .swiper-wrapper {
  display: flex;
}

.banner-slider .swiper-slide {
  flex-shrink: 0;
  width: 100%;
}

.banner-slider .swiper-button-next,
.banner-slider .swiper-button-prev {
  display: none !important;
}

/* ============================
   Cards carousel
   ============================ */

.cards-carousel-swiper {
  overflow: clip;
}

.cards-carousel-swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
}

.cards-carousel-swiper .swiper-slide {
  flex-shrink: 0;
  height: auto;
}

/* ============================
   Arrows are always visible (desktop + mobile).
   Navigation is done only via arrows — no mousewheel.
   ============================ */

/* ============================================
   Klaro Cookies — PHP Belém Design System
   ============================================ */

.klaro {
  font-family: var(--font-family);
  color: var(--foreground);
  /* Modal background container */
}

.klaro .cookie-modal {
  background: oklch(0% 0 0deg / 0.6);
  backdrop-filter: blur(8px);
}

.klaro {
  /* Main notice box */
}

.klaro .cookie-notice {
  background: var(--card);
  color: var(--card-foreground);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow-panel);
  position: fixed;
  left: 50%;
  bottom: 2rem;
  transform: translateX(-50%);
  width: calc(100% - 32px);
  max-width: 640px;
  padding: 1.5rem;
}

.klaro {
  /* Title */
}

.klaro h2 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 0.75rem;
  color: var(--foreground);
}

.klaro {
  /* Description text */
}

.klaro .cn-description {
  color: var(--muted-foreground);
  font-size: 0.875rem;
  line-height: 1.6;
  margin-bottom: 1rem;
}

.klaro {
  /* Links */
}

.klaro a {
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 0.25rem;
  transition: all 0.2s ease;
}

.klaro a:hover {
  color: var(--primary-glow);
  text-underline-offset: 0.375rem;
}

.klaro {
  /* Toggle switches */
}

.klaro .cm-list-input:checked + .cm-list-label .slider {
  background: var(--gradient-ember);
  box-shadow: var(--shadow-ember-sm);
}

.klaro .cm-list-input.required:checked + .cm-list-label .slider {
  background: var(--gradient-ember);
  opacity: 0.7;
}

.klaro .slider {
  background-color: var(--muted);
  border-radius: 9999px;
  transition: all 0.3s ease;
}

.klaro {
  /* Purpose items */
}

.klaro .cm-list-item {
  border-bottom: 1px solid var(--border);
  padding: 0.75rem 0;
}

.klaro .cm-list-item:last-child {
  border-bottom: none;
}

.klaro .cm-list-title {
  color: var(--foreground);
  font-weight: 500;
}

.klaro .cm-list-description {
  color: var(--muted-foreground);
  font-size: 0.8125rem;
  margin-top: 0.25rem;
}

/* ============================================
   Buttons — PHP Belém Style
   ============================================ */

.klaro .cm-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.75rem 1.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  border-radius: var(--radius);
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
  white-space: nowrap;
}

/* Accept all (primary) */

.klaro .cm-btn-success {
  background: var(--gradient-ember);
  color: var(--primary-foreground);
  box-shadow: var(--shadow-ember-sm);
}

.klaro .cm-btn-success:hover {
  filter: brightness(1.1);
  box-shadow: var(--shadow-ember);
}

.klaro .cm-btn-success:focus-visible {
  outline: 2px solid transparent;
  box-shadow: 0 0 0 3px var(--ring);
}

/* Decline (secondary/outline) */

.klaro .cm-btn-danger {
  background-color: transparent;
  color: var(--foreground);
  border: 1px solid var(--border);
}

.klaro .cm-btn-danger:hover {
  background-color: var(--accent);
  color: var(--accent-foreground);
}

.klaro .cm-btn-danger:focus-visible {
  outline: 2px solid transparent;
  box-shadow: 0 0 0 3px var(--ring);
}

/* Info / personalize (ghost) */

.klaro .cm-btn-info {
  background-color: transparent;
  color: var(--primary);
}

.klaro .cm-btn-info:hover {
  background-color: var(--accent);
}

.klaro .cm-btn-info:focus-visible {
  outline: 2px solid transparent;
  box-shadow: 0 0 0 3px var(--ring);
}

/* Close button */

.klaro .klaro-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 2rem;
  height: 2rem;
  border-radius: var(--radius);
  background: var(--muted);
  color: var(--muted-foreground);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
}

.klaro .klaro-close:hover {
  background: var(--accent);
  color: var(--foreground);
}

/* ============================================
   Modal (settings panel)
   ============================================ */

.klaro .cookie-modal .cm-modal {
  background: var(--card);
  color: var(--card-foreground);
  border: 1px solid var(--border);
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-panel);
  max-width: 640px;
  margin: 2rem auto;
  padding: 2rem;
}

.klaro .cm-header {
  border-bottom: 1px solid var(--border);
  padding-bottom: 1rem;
  margin-bottom: 1.5rem;
}

.klaro .cm-footer {
  border-top: 1px solid var(--border);
  padding-top: 1.5rem;
  margin-top: 1.5rem;
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
}

/* ============================================
   Responsive
   ============================================ */

@media (max-width: 640px) {
  .klaro .cookie-notice {
    bottom: 1rem;
    padding: 1.25rem;
  }

  .klaro .cm-btn {
    width: 100%;
    padding: 0.875rem 1rem;
  }

  .klaro .cm-footer {
    flex-direction: column;
  }
}

.favoritar-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  padding: 0.375rem 0.75rem;
  border-radius: 0.375rem;
  border: 1px solid var(--border, hsl(var(--border)));
  background: transparent;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: all 0.2s ease;
}

.favoritar-btn:hover {
  background: hsl(var(--muted)/0.8);
  color: hsl(var(--foreground));
}

.favoritar-btn.favorito-ativo {
  color: #dc2626;
  border-color: #fca5a5;
  background: hsl(var(--muted)/0.5);
}

.favoritar-btn.favorito-ativo:hover {
  background: hsl(var(--muted)/0.9);
}

.favoritar-btn .favoritar-icon {
  font-size: 1rem;
  line-height: 1;
}

.favoritar-btn .favoritar-count {
  font-size: 0.75rem;
  opacity: 0.7;
}

/* ============================================================
   Forms — base styles for all Drupal forms
   Uses CSS custom properties so dark/light mode works natively
   ============================================================ */

.webform-button--submit {
  cursor: pointer;
}

input[type=submit].form-submit,
input[type=submit].button {
  cursor: pointer;
}

/* --- Form item spacing --- */

.form-item {
  margin-top: 0;
  margin-bottom: 0;
}

.form-actions {
  margin-top: 0;
  margin-bottom: 0;
}

/* --- Focus ring for inputs using CSS var primary --- */

input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px var(--background), 0 0 0 4px var(--primary);
}

/* --- Checkbox / Radio consistency --- */

input[type=checkbox],
input[type=radio] {
  accent-color: var(--primary);
}

/* --- Select dropdown --- */

select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 0.75rem center;
  background-repeat: no-repeat;
  background-size: 1rem;
  padding-right: 2.5rem;
}

/* --- Views exposed form reset --- */

.views-exposed-form .form-item {
  margin-top: 0;
  margin-bottom: 0;
}

.views-exposed-form input[type=text],
.views-exposed-form input[type=search],
.views-exposed-form select,
.views-exposed-form input[type=submit] {
  box-sizing: border-box;
  min-height: 48px;
}

.views-exposed-form .form-actions {
  margin-top: 0;
  margin-bottom: 0;
  align-self: flex-end;
}

/* --- Form error states --- */

input.error,
textarea.error,
select.error {
  border-color: var(--destructive, #ef4444) !important;
}

.form-item--error-message {
  color: var(--destructive, #ef4444);
  font-size: 0.75rem;
  margin-top: 0.25rem;
}

/* --- Newsletter specific button --- */

.webform-submission-newsletter-form .form-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-image: var(--gradient-ember);
  padding: 0.75rem;
  width: 42px;
  height: 42px;
  color: var(--primary-foreground);
  box-shadow: var(--shadow-ember-sm);
  transition: filter 0.2s;
  border: none;
  cursor: pointer;
  font-size: 0;
}

.webform-submission-newsletter-form .form-submit:hover {
  filter: brightness(1.1);
}

.webform-submission-newsletter-form .form-submit::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.form-item__label{
  margin-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  color: var(--muted-foreground);
}

.form-type-checkbox{
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.paragraph--type--icon-contact-link-component .form-type-checkbox.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .flex.form-type-checkbox {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .form-type-checkbox.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--icon-contact-link-component .flex.form-type-checkbox > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.form-submit {
  cursor: pointer;
}

.media--type-responsive-image picture {
  display: block;
  width: 100%;
}

.media--type-responsive-image img {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  /* Garante que o banner preencha o espaço sem deformar */
}

.aspect-video iframe.media-oembed-content,
.aspect-video .media--type-remote-video,
.aspect-video .media--type-remote-video iframe,
.aspect-video-16\/9 iframe.media-oembed-content,
.aspect-video-16\/9 .media--type-remote-video,
.aspect-video-16\/9 .media--type-remote-video iframe,
[class*=aspect-video] iframe.media-oembed-content,
[class*=aspect-video] .media--type-remote-video,
[class*=aspect-video] .media--type-remote-video iframe {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.media-embed-responsive {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
}

.media-embed-responsive iframe,
.media-embed-responsive embed,
.media-embed-responsive object,
.media-embed-responsive video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

#course-subscription-modal {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 2.5rem 1rem 1rem;
}

@media (min-width: 768px) {
  #course-subscription-modal {
    padding-top: 5rem;
  }
}

#course-subscription-modal #modal-close-btn {
  right: 2rem;
}

/* ==========================================================================
   DXPR Builder Settings Modal — fix Bootstrap 5 collapse/accordion issues
   The settings modal uses .panel-group.az-accordion with .collapse.show
   and .card-body.az-ctnr which can have clipping/z-index issues.
   ========================================================================== */

.dxpr-builder-settings-container,
.dxpr-builder-settings-body {
  overflow: visible !important;
}

.dxpr-builder-settings-container .collapse {
  display: none;
  visibility: hidden;
}

.dxpr-builder-settings-container .collapse.show {
  display: block;
  visibility: visible;
}

.dxpr-builder-settings-container .collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

/* Fix white overlay/layer on top when accordion open */

.dxpr-builder-settings-container .card-body.az-ctnr {
  position: relative;
  z-index: 1;
  background: transparent;
}

/* Ensure accordion items don't clip each other */

.az-element.az-accordion .az-toggle.card {
  overflow: visible;
}

/* Fix transition for smooth open/close */

.az-element.az-accordion .collapse {
  transition: height 0.35s ease;
}

/* Ensure backdrop doesn't appear on inline settings */

.dxpr-builder-settings-container .modal-backdrop,
.dxpr-builder-settings-container::before,
.dxpr-builder-settings-container::after {
  display: none !important;
}

/* Fix potential z-index stacking context issues */

.az-element.az-accordion {
  position: relative;
  z-index: 10;
}

/* Ensure card headers stay above collapsing content */

.dxpr-builder-settings-heading {
  position: relative;
  z-index: 2;
}

/* Prevent white flash during transition */

.dxpr-builder-settings-container .collapsing {
  background: transparent;
}

.section-simple-header.centered_no_border{
  position: relative;
  padding-top: 5rem;
  padding-bottom: 5rem;
  text-align: center;
}

#block-front-theme-main-menu li.section-simple-header.centered_no_border.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.section-simple-header.centered_no_border.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.section-simple-header.centered_no_border.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.section-simple-header.centered_no_border.group.is-open > ul {
    display: flex;
  }
}

@media (min-width: 768px){
  .section-simple-header.centered_no_border{
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
}

@media (min-width: 1280px){
  .section-simple-header.centered_no_border{
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}

.section-simple-header.centered_no_border .header-lead{
  color: var(--primary);
  font-family: var(--font-mono);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-primary);
  font-size: 0.72rem;
}

.section-simple-header.centered_no_border .header-title {
  margin-top: 0.75rem;
  font-family: var(--font-display);
  font-size: 2.25rem;
  line-height: 2.5rem;
  font-weight: 700;
}

@media (min-width: 768px){
  .section-simple-header.centered_no_border .header-title{
    font-size: 3.75rem;
    line-height: 1;
  }
}

.section-simple-header.centered_no_border .header-desc{
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
  max-width: 42rem;
  color: var(--muted-foreground);
}

.section-simple-header.centered_no_border .bg-centered{
  position: absolute;
  inset: 0px;
  padding-top: 5rem;
  padding-bottom: 5rem;
  opacity: 0.4;
}

@media (min-width: 768px){
  .section-simple-header.centered_no_border .bg-centered{
    padding-top: 9rem;
    padding-bottom: 9rem;
  }
}

.section-simple-header.centered_no_border .bg-centered {
  background: var(--gradient-radial-red);
}

.section-simple-header.simple {
  background: color-mix(in oklab, var(--primary) 10%, transparent);
  position: relative;
  padding-top: 5rem;
  padding-bottom: 5rem;
  text-align: left;
}

#block-front-theme-main-menu li.section-simple-header.simple.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.section-simple-header.simple.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.section-simple-header.simple.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.section-simple-header.simple.group.is-open > ul {
    display: flex;
  }
}

@media (min-width: 768px){
  .section-simple-header.simple{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

@media (min-width: 1280px){
  .section-simple-header.simple{
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}

.section-simple-header.simple .header-lead{
  color: var(--primary);
  font-family: var(--font-mono);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-primary);
  font-size: 0.72rem;
}

.section-simple-header.simple .header-title {
  margin-top: 0.75rem;
  font-family: var(--font-display);
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
}

@media (min-width: 768px){
  .section-simple-header.simple .header-title{
    font-size: 3rem;
    line-height: 1;
  }
}

.section-simple-header.simple .header-desc{
  margin-top: 0.75rem;
  max-width: 36rem;
  color: var(--muted-foreground);
}

.section-simple-header.ambar_detail{
  position: relative;
  padding-top: 5rem;
  padding-bottom: 5rem;
  text-align: left;
}

#block-front-theme-main-menu li.section-simple-header.ambar_detail.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.section-simple-header.ambar_detail.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.section-simple-header.ambar_detail.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.section-simple-header.ambar_detail.group.is-open > ul {
    display: flex;
  }
}

@media (min-width: 768px){
  .section-simple-header.ambar_detail{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

@media (min-width: 1280px){
  .section-simple-header.ambar_detail{
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}

.section-simple-header.ambar_detail {
  background: color-mix(in oklab, var(--amber-glow) 10%, transparent);
}

.section-simple-header.ambar_detail .header-lead{
  color: var(--primary);
  font-family: var(--font-mono);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-primary);
  font-size: 0.72rem;
}

.section-simple-header.ambar_detail .header-title {
  margin-top: 0.75rem;
  font-family: var(--font-display);
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
}

@media (min-width: 768px){
  .section-simple-header.ambar_detail .header-title{
    font-size: 3rem;
    line-height: 1;
  }
}

.section-simple-header.ambar_detail .header-desc{
  margin-top: 0.75rem;
  max-width: 36rem;
  color: var(--muted-foreground);
}

.text-content-editor {
  font-size: 0.938rem;
  line-height: 1.6;
  color: inherit;
}

@media (min-width: 768px) {
  .text-content-editor {
    font-size: 1rem;
    line-height: 1.7;
  }
}

.text-content-editor * {
  max-width: 100%;
}

.text-content-editor h1, .text-content-editor h2, .text-content-editor h3, .text-content-editor h4, .text-content-editor h5, .text-content-editor h6 {
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 0.75rem;
  margin-top: 1.5rem;
}

@media (min-width: 768px) {
  .text-content-editor h1, .text-content-editor h2, .text-content-editor h3, .text-content-editor h4, .text-content-editor h5, .text-content-editor h6 {
    line-height: 1.3;
    margin-top: 2.5rem;
  }
}

.text-content-editor h1 {
  font-size: 1.5rem;
}

@media (min-width: 768px) {
  .text-content-editor h1 {
    font-size: 2.25rem;
  }
}

.text-content-editor h2 {
  font-size: 1.35rem;
}

@media (min-width: 768px) {
  .text-content-editor h2 {
    font-size: 1.875rem;
  }
}

.text-content-editor h3 {
  font-size: 1.25rem;
}

@media (min-width: 768px) {
  .text-content-editor h3 {
    font-size: 1.5rem;
  }
}

.text-content-editor h4 {
  font-size: 1.15rem;
}

@media (min-width: 768px) {
  .text-content-editor h4 {
    font-size: 1.25rem;
  }
}

.text-content-editor h5 {
  font-size: 1.1rem;
}

.text-content-editor h6 {
  font-size: 1rem;
}

.text-content-editor p {
  margin-bottom: 1rem;
}

.text-content-editor blockquote {
  border-left: 4px solid #ddd;
  padding-left: 1rem;
  margin: 1rem 0;
  font-style: italic;
  color: #555;
  font-size: 1.1em;
}

@media (min-width: 768px) {
  .text-content-editor blockquote {
    margin: 1.5rem 0;
    padding-left: 1.5rem;
  }
}

.text-content-editor table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (min-width: 768px) {
  .text-content-editor table {
    display: table;
  }
}

.text-content-editor th, .text-content-editor td {
  border: 1px solid #ddd;
  padding: 0.6rem;
  min-width: 120px;
}

@media (min-width: 768px) {
  .text-content-editor th, .text-content-editor td {
    padding: 0.75rem;
    min-width: auto;
  }
}

.text-content-editor figure {
  margin: 1rem 0;
}

@media (min-width: 768px) {
  .text-content-editor figure {
    margin: 1.5rem 0;
  }
}

.text-content-editor figure figcaption {
  font-size: 0.8rem;
}

@media (min-width: 768px) {
  .text-content-editor figure figcaption {
    font-size: 0.875rem;
  }
}

.text-content-editor iframe {
  margin: 1rem 0;
}

@media (min-width: 768px) {
  .text-content-editor iframe {
    margin: 1.5rem 0;
  }
}

.text-content-editor pre {
  background: var(--card);
  color: var(--card-foreground);
  padding: 1rem 1.25rem;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  overflow-x: auto;
  font-family: var(--font-mono);
  font-size: 0.8125rem;
  line-height: 1.7;
  margin: 1rem 0;
  -moz-tab-size: 4;
    -o-tab-size: 4;
       tab-size: 4;
}

@media (min-width: 768px) {
  .text-content-editor pre {
    padding: 1.25rem 1.5rem;
    margin: 1.5rem 0;
  }
}

.text-content-editor pre code {
  background: none;
  color: inherit;
  padding: 0;
  font-size: inherit;
  font-family: inherit;
  border: none;
}

.text-content-editor :not(pre) > code {
  background: var(--muted);
  color: var(--primary);
  padding: 0.15em 0.4em;
  border-radius: 0.375rem;
  font-family: var(--font-mono);
  font-size: 0.85em;
}

/* Galeria de vídeos: carousel e proporções. */

.video-gallery-swiper {
  max-width: 100%;
  overflow: clip;
  position: relative;
}

.video-gallery-swiper .swiper-wrapper {
  display: flex;
  align-items: stretch;
}

.video-gallery-swiper .swiper-slide {
  display: flex;
  flex-shrink: 0;
  height: auto;
}

.video-gallery-swiper .video-gallery-item {
  width: 100%;
}

.video-gallery--shorts .video-gallery-item {
  aspect-ratio: 9/16 !important;
}

.video-gallery--normal .video-gallery-item {
  aspect-ratio: 16/9 !important;
}

.whatsapp-float {
  position: fixed;
  bottom: 1.5rem;
  right: 1.5rem;
  z-index: 9999;
}

.whatsapp-float__link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  text-decoration: none;
}

.whatsapp-float__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #25d366 0%, #128c7e 100%);
  color: white;
  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.35), 0 0 0 0 rgba(37, 211, 102, 0.4);
  animation: whatsapp-pulse 2s ease-out infinite;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.whatsapp-float__icon svg {
  width: 1.5rem;
  height: 1.5rem;
}

.whatsapp-float__icon:hover, .whatsapp-float__icon:focus {
  transform: scale(1.1);
  box-shadow: 0 6px 20px rgba(37, 211, 102, 0.45);
  animation-play-state: paused;
}

.whatsapp-float--hidden {
  transform: translateY(150%);
  transition: transform 0.4s ease-in-out;
}

.whatsapp-float__bubble {
  position: relative;
  background: white;
  color: #333;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.25;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
  white-space: nowrap;
  margin-right: 0.25rem;
}

.whatsapp-float__bubble::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -0.375rem;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-top: 0.375rem solid transparent;
  border-bottom: 0.375rem solid transparent;
  border-left: 0.5rem solid white;
}

@keyframes whatsapp-pulse {
  0% {
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.35), 0 0 0 0 rgba(37, 211, 102, 0.4);
  }

  70% {
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.35), 0 0 0 10px rgba(37, 211, 102, 0);
  }

  100% {
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.35), 0 0 0 0 rgba(37, 211, 102, 0);
  }
}

@media (min-width: 768px) {
  .whatsapp-float {
    bottom: 2rem;
    right: 2rem;
  }

  .whatsapp-float__icon {
    width: 4rem;
    height: 4rem;
  }

  .whatsapp-float__icon svg {
    width: 1.75rem;
    height: 1.75rem;
  }
}

.iconify-field {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 1.5em !important;
  height: 1.5em !important;
  flex-shrink: 0 !important;
}

.iconify-field svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.paragraph--type--icon-contact-link-component .flex.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .flex.items-center > span:first-child {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 2em !important;
  height: 2em !important;
  flex-shrink: 0 !important;
}

.course__hero h1 {
  line-height: 1.2;
}

.course__meta strong {
  display: block;
  font-size: 0.85rem;
  color: #6b7280;
  margin-bottom: 4px;
}

.course__meta div {
  font-size: 0.95rem;
}

.course__section {
  margin-bottom: 4rem;
}

.course__section h2 {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
}

.course__card {
  background: #f9fafb;
  padding: 1.5rem;
  border-radius: 0.75rem;
}

.course__card h3 {
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.course__cta {
  background: #f3f4f6;
  padding: 2.5rem;
  border-radius: 1rem;
  text-align: center;
}

.course__cta a {
  transition: all 0.2s ease;
}

.course__cta a:hover {
  transform: translateY(-2px);
}

.content--type--conteudos .featured-image{
  height: 100%;
  width: 100%;
}

.content--type--conteudos .featured-image picture{
  display: block;
  height: 100%;
  width: 100%;
}

.content--type--conteudos .featured-image img{
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

#search-modal #search-block-form{
  display: flex;
  width: 100%;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}

.paragraph--type--icon-contact-link-component #search-modal #search-block-form.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .flex#search-modal #search-block-form {
  align-items: center;
}

.paragraph--type--icon-contact-link-component #search-modal #search-block-form.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--icon-contact-link-component .flex#search-modal #search-block-form > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

#search-modal #search-block-form .form-item-keys{
  flex: 1 1 0%;
}

#search-modal #search-block-form input[type=search]{
  width: 100%;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

#search-modal #search-block-form .form-actions{
  flex: none;
}

#search-modal #search-block-form .form-actions input{
  --tw-bg-opacity: 1;
  background-color: rgb(6 95 70 / var(--tw-bg-opacity));
  line-height: 1.25rem;
  letter-spacing: 0.025em;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  white-space: nowrap;
  font-size: 0.875rem;
  font-weight: 500;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
  text-decoration: none;
  outline: none;
  position: relative;
  padding: 1rem 1.5rem;
}

#search-modal #search-block-form .form-actions input:hover {
  text-decoration: none;
}

#search-modal #search-block-form .form-actions input svg {
  pointer-events: none;
  flex-shrink: 0;
}

#search-modal #search-block-form .form-actions input svg:not([class*=size-]) {
  width: 1rem;
  height: 1rem;
}

#search-modal #search-block-form .form-actions input:focus-visible {
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: 0 0 0 3px var(--ring);
}

#search-modal #search-block-form .form-actions input:disabled {
  pointer-events: none;
  opacity: 0.5;
}

#search-modal #search-block-form .form-actions input.is-loading {
  pointer-events: none;
  opacity: 0.7;
}

#search-modal #search-block-form .form-actions input.is-loading::after {
  content: "";
  display: inline-block;
  width: 0.875rem;
  height: 0.875rem;
  margin-left: 0.5rem;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: spin 0.6s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  #search-modal #search-block-form .form-actions input {
    transition: none;
  }

  #search-modal #search-block-form .form-actions input.is-loading::after {
    animation: none;
  }
}

#search-modal #search-block-form .form-actions input:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(6 78 59 / var(--tw-bg-opacity));
}

#search-results-page h2{
  margin-bottom: 2.5rem;
  font-size: 3rem;
  line-height: 1;
  font-weight: 400;
}

#search-results-page #search-block-form-list{
  display: flex;
  width: 100%;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}

.paragraph--type--icon-contact-link-component #search-results-page #search-block-form-list.items-center {
  align-items: center;
}

.paragraph--type--icon-contact-link-component .flex#search-results-page #search-block-form-list {
  align-items: center;
}

.paragraph--type--icon-contact-link-component #search-results-page #search-block-form-list.items-center > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

.paragraph--type--icon-contact-link-component .flex#search-results-page #search-block-form-list > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  flex-shrink: 0;
}

#search-results-page #search-block-form-list label{
  display: none;
}

#search-results-page #search-block-form-list input[type=search]{
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

#search-results-page ol {
  list-style-type: none;
}

.content--type--event .paragraph--type--section-columns{
  padding-left: 0px;
  padding-right: 0px;
}

.content--type--event .paragraph--type--section-fluid-title-and-text{
  padding-left: 0px;
  padding-right: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
}

.content--type--event .list-links{
  list-style-type: none;
  padding-left: 0px;
}

.content--type--event .list-links li a {
  color: #fff;
}

.content--type--event .list-links li a span svg{
  color: var(--primary);
}

@media (min-width: 1280px){
  .content--type--event .paragraph--type--gallery{
    padding-top: 0px;
    padding-bottom: 0px;
  }
}

html.light .list-links{
  list-style-type: none;
  padding-left: 0px;
}

html.light .list-links li a {
  color: #000;
}

html.light .list-links li a span svg{
  color: var(--primary);
}

header[class*="inset-x-0 z-50"] {
  transition: transform 0.3s ease, background-color 0.3s ease;
}

header[class*="inset-x-0 z-50"].header-hidden {
  transform: translateY(-100%);
}

.toolbar-fixed header[class*="inset-x-0 z-50"] {
  top: 39px;
}

.toolbar-fixed header[class*="inset-x-0 z-50"].header-hidden {
  top: 39px;
  transform: translateY(calc(-100% - 39px));
}

.toolbar-tray-open.toolbar-horizontal header[class*="inset-x-0 z-50"] {
  top: 79px;
}

.toolbar-tray-open.toolbar-horizontal header[class*="inset-x-0 z-50"].header-hidden {
  top: 79px;
  transform: translateY(calc(-100% - 79px));
}

header img.logo {
  height: 45px;
}

@media (min-width: 1024px) {
  header img.logo {
    height: 65px;
  }
}

#block-front-theme-main-menu > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
}

#block-front-theme-main-menu li.relative.group > ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
}

#block-front-theme-main-menu li.relative.group.is-open > ul {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

@media (min-width: 1024px) {
  #block-front-theme-main-menu li.relative.group > ul {
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 0.5rem;
    min-width: 220px;
    z-index: 50;
    background: var(--background);
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25);
    padding: 0.5rem 0;
  }

  #block-front-theme-main-menu li.relative.group.is-open > ul {
    display: flex;
  }
}

#mobile-menu ul li a {
  background: transparent !important;
}

html body {
  border-bottom: 0 !important;
}

html.light .text-editor ul, html.light .text-editor ol, html.light .text-editor li, html.light .text-editor p, html.light .text-editor span, html.light .text-editor strong {
  color: var(--muted-foreground) !important;
}

html.light .text-editor a {
  color: var(--primary) !important;
}

html .text-editor h2{
  font-size: 1.875rem;
  line-height: 2.25rem;
}

html .text-editor img {
  max-width: 100%;
  height: auto;
}

html .text-editor .media,
html .text-editor .media--type-image,
html .text-editor .align-center,
html .text-editor .align-left,
html .text-editor .align-right {
  max-width: 100%;
}

html #block-front-theme-main-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
}

html #block-front-theme-main-menu .contextual-links,
html #block-front-theme-main-menu .contextual {
  display: none !important;
}

footer ol, footer ul, footer menu {
  list-style: none;
}

*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

input:where([type='text']),input:where(:not([type])),input:where([type='email']),input:where([type='url']),input:where([type='password']),input:where([type='number']),input:where([type='date']),input:where([type='datetime-local']),input:where([type='month']),input:where([type='search']),input:where([type='tel']),input:where([type='time']),input:where([type='week']),select:where([multiple]),textarea,select{
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border-color: #6b7280;
  border-width: 1px;
  border-radius: 0px;
  padding-top: 0.5rem;
  padding-right: 0.75rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  font-size: 1rem;
  line-height: 1.5rem;
  --tw-shadow: 0 0 #0000;
}

input:where([type='text']):focus, input:where(:not([type])):focus, input:where([type='email']):focus, input:where([type='url']):focus, input:where([type='password']):focus, input:where([type='number']):focus, input:where([type='date']):focus, input:where([type='datetime-local']):focus, input:where([type='month']):focus, input:where([type='search']):focus, input:where([type='tel']):focus, input:where([type='time']):focus, input:where([type='week']):focus, select:where([multiple]):focus, textarea:focus, select:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #2563eb;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-color: #2563eb;
}

input::-moz-placeholder, textarea::-moz-placeholder{
  color: #6b7280;
  opacity: 1;
}

input::placeholder,textarea::placeholder{
  color: #6b7280;
  opacity: 1;
}

::-webkit-datetime-edit-fields-wrapper{
  padding: 0;
}

::-webkit-date-and-time-value{
  min-height: 1.5em;
  text-align: inherit;
}

::-webkit-datetime-edit{
  display: inline-flex;
}

::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{
  padding-top: 0;
  padding-bottom: 0;
}

select{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
  background-position: right 0.5rem center;
  background-repeat: no-repeat;
  background-size: 1.5em 1.5em;
  padding-right: 2.5rem;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

select:where([multiple]),select:where([size]:not([size="1"])){
  background-image: initial;
  background-position: initial;
  background-repeat: unset;
  background-size: initial;
  padding-right: 0.75rem;
  -webkit-print-color-adjust: unset;
          print-color-adjust: unset;
}

input:where([type='checkbox']),input:where([type='radio']){
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
  display: inline-block;
  vertical-align: middle;
  background-origin: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  flex-shrink: 0;
  height: 1rem;
  width: 1rem;
  color: #2563eb;
  background-color: #fff;
  border-color: #6b7280;
  border-width: 1px;
  --tw-shadow: 0 0 #0000;
}

input:where([type='checkbox']){
  border-radius: 0px;
}

input:where([type='radio']){
  border-radius: 100%;
}

input:where([type='checkbox']):focus,input:where([type='radio']):focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #2563eb;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

input:where([type='checkbox']):checked,input:where([type='radio']):checked{
  border-color: transparent;
  background-color: currentColor;
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}

input:where([type='checkbox']):checked{
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
}

@media (forced-colors: active) {
  input:where([type='checkbox']):checked{
    -webkit-appearance: auto;
       -moz-appearance: auto;
            appearance: auto;
  }
}

input:where([type='radio']):checked{
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
}

@media (forced-colors: active) {
  input:where([type='radio']):checked{
    -webkit-appearance: auto;
       -moz-appearance: auto;
            appearance: auto;
  }
}

input:where([type='checkbox']):checked:hover,input:where([type='checkbox']):checked:focus,input:where([type='radio']):checked:hover,input:where([type='radio']):checked:focus{
  border-color: transparent;
  background-color: currentColor;
}

input:where([type='checkbox']):indeterminate{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");
  border-color: transparent;
  background-color: currentColor;
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}

@media (forced-colors: active) {
  input:where([type='checkbox']):indeterminate{
    -webkit-appearance: auto;
       -moz-appearance: auto;
            appearance: auto;
  }
}

input:where([type='checkbox']):indeterminate:hover,input:where([type='checkbox']):indeterminate:focus{
  border-color: transparent;
  background-color: currentColor;
}

input:where([type='file']){
  background: unset;
  border-color: inherit;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-size: unset;
  line-height: inherit;
}

input:where([type='file']):focus{
  outline: 1px solid ButtonText;
  outline: 1px auto -webkit-focus-ring-color;
}

*, *::before, *::after {
  box-sizing: border-box;
  border-color: var(--border);
  border-style: solid;
  border-width: 0;
}

html {
  background-color: var(--background);
  color: var(--foreground);
  font-family: var(--font-sans);
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.dark {
  color-scheme: dark;
}

html.light {
  color-scheme: light;
}

body {
  font-size: 1rem;
  line-height: 1.5;
  margin: 0 !important;
  border-bottom: solid !important;
  overflow-x: hidden;
}

::-moz-selection {
  background: oklch(66% 0.24 22deg / 0.45);
  color: white;
}

::selection {
  background: oklch(66% 0.24 22deg / 0.45);
  color: white;
}

ul, ol {
  padding: 0;
  margin: 0;
}

h1, h2, h3, h4, h5 {
  font-family: var(--font-display);
  letter-spacing: -0.02em;
  font-weight: 500;
  hyphens: none !important;
  overflow-wrap: break-word;
}

h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 500;
  line-height: 1.1;
  margin-bottom: 1.5rem;
}

h2 {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1.25rem;
}

h3 {
  font-size: clamp(1.375rem, 3vw, 2rem);
  font-weight: 600;
  line-height: 1.3;
  margin-bottom: 1rem;
}

p {
  font-size: 0.938rem;
  line-height: 1.625;
  margin-bottom: 1.25rem;
  letter-spacing: normal;
  color: var(--muted-foreground);
}

@media (min-width: 768px) {
  p {
    font-size: 1rem;
  }
}

a {
  color: var(--primary);
  text-decoration: none;
  transition: color 0.2s ease-in-out;
}

a:hover {
  opacity: 0.9;
}

ul {
  list-style: disc inside;
  margin-bottom: 2rem;
}

ol {
  list-style: auto inside;
  margin-bottom: 2rem;
}

hr {
  border: none;
  border-top: 1px solid var(--border);
  margin: 2rem 0 !important;
}

nav ul, nav ol {
  list-style: none;
  padding: 0;
  margin: 0 !important;
}

.font-bold {
  font-weight: 700 !important;
}

.font-semibold {
  font-weight: 600 !important;
}

.container{
  width: 100%;
}

@media (min-width: 640px){
  .container{
    max-width: 640px;
  }
}

@media (min-width: 768px){
  .container{
    max-width: 768px;
  }
}

@media (min-width: 1024px){
  .container{
    max-width: 1024px;
  }
}

@media (min-width: 1280px){
  .container{
    max-width: 1280px;
  }
}

@media (min-width: 1536px){
  .container{
    max-width: 1536px;
  }
}

.prose{
  color: var(--tw-prose-body);
  max-width: 65ch;
}

.prose :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}

.prose :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-lead);
  font-size: 1.25em;
  line-height: 1.6;
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}

.prose :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-links);
  text-decoration: underline;
  font-weight: 500;
}

.prose :where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-bold);
  font-weight: 600;
}

.prose :where(a strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(blockquote strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(thead th strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: decimal;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}

.prose :where(ol[type="A"]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: upper-alpha;
}

.prose :where(ol[type="a"]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: lower-alpha;
}

.prose :where(ol[type="A" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: upper-alpha;
}

.prose :where(ol[type="a" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: lower-alpha;
}

.prose :where(ol[type="I"]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: upper-roman;
}

.prose :where(ol[type="i"]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: lower-roman;
}

.prose :where(ol[type="I" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: upper-roman;
}

.prose :where(ol[type="i" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: lower-roman;
}

.prose :where(ol[type="1"]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: decimal;
}

.prose :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  list-style-type: disc;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
  padding-inline-start: 1.625em;
}

.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker{
  font-weight: 400;
  color: var(--tw-prose-counters);
}

.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker{
  color: var(--tw-prose-bullets);
}

.prose :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.25em;
}

.prose :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  border-color: var(--tw-prose-hr);
  border-top-width: 1px;
  margin-top: 3em;
  margin-bottom: 3em;
}

.prose :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-weight: 500;
  font-style: italic;
  color: var(--tw-prose-quotes);
  border-inline-start-width: 0.25rem;
  border-inline-start-color: var(--tw-prose-quote-borders);
  quotes: "\201C""\201D""\2018""\2019";
  margin-top: 1.6em;
  margin-bottom: 1.6em;
  padding-inline-start: 1em;
}

.prose :where(blockquote p:first-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::before{
  content: open-quote;
}

.prose :where(blockquote p:last-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::after{
  content: close-quote;
}

.prose :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-headings);
  font-weight: 800;
  font-size: 2.25em;
  margin-top: 0;
  margin-bottom: 0.8888889em;
  line-height: 1.1111111;
}

.prose :where(h1 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-weight: 900;
  color: inherit;
}

.prose :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-headings);
  font-weight: 700;
  font-size: 1.5em;
  margin-top: 2em;
  margin-bottom: 1em;
  line-height: 1.3333333;
}

.prose :where(h2 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-weight: 800;
  color: inherit;
}

.prose :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-headings);
  font-weight: 600;
  font-size: 1.25em;
  margin-top: 1.6em;
  margin-bottom: 0.6em;
  line-height: 1.6;
}

.prose :where(h3 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-weight: 700;
  color: inherit;
}

.prose :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-headings);
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  line-height: 1.5;
}

.prose :where(h4 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-weight: 700;
  color: inherit;
}

.prose :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 2em;
  margin-bottom: 2em;
}

.prose :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  display: block;
  margin-top: 2em;
  margin-bottom: 2em;
}

.prose :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 2em;
  margin-bottom: 2em;
}

.prose :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-weight: 500;
  font-family: inherit;
  color: var(--tw-prose-kbd);
  box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);
  font-size: 0.875em;
  border-radius: 0.3125rem;
  padding-top: 0.1875em;
  padding-inline-end: 0.375em;
  padding-bottom: 0.1875em;
  padding-inline-start: 0.375em;
}

.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-code);
  font-weight: 600;
  font-size: 0.875em;
}

.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before{
  content: "`";
}

.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after{
  content: "`";
}

.prose :where(a code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(h1 code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
  font-size: 0.875em;
}

.prose :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
  font-size: 0.9em;
}

.prose :where(h4 code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(blockquote code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(thead th code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: inherit;
}

.prose :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-pre-code);
  background-color: var(--tw-prose-pre-bg);
  overflow-x: auto;
  font-weight: 400;
  font-size: 0.875em;
  line-height: 1.7142857;
  margin-top: 1.7142857em;
  margin-bottom: 1.7142857em;
  border-radius: 0.375rem;
  padding-top: 0.8571429em;
  padding-inline-end: 1.1428571em;
  padding-bottom: 0.8571429em;
  padding-inline-start: 1.1428571em;
}

.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  background-color: transparent;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-weight: inherit;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
}

.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before{
  content: none;
}

.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after{
  content: none;
}

.prose :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  width: 100%;
  table-layout: auto;
  margin-top: 2em;
  margin-bottom: 2em;
  font-size: 0.875em;
  line-height: 1.7142857;
}

.prose :where(thead):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-th-borders);
}

.prose :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-headings);
  font-weight: 600;
  vertical-align: bottom;
  padding-inline-end: 0.5714286em;
  padding-bottom: 0.5714286em;
  padding-inline-start: 0.5714286em;
}

.prose :where(tbody tr):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  border-bottom-width: 1px;
  border-bottom-color: var(--tw-prose-td-borders);
}

.prose :where(tbody tr:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  border-bottom-width: 0;
}

.prose :where(tbody td):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  vertical-align: baseline;
}

.prose :where(tfoot):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  border-top-width: 1px;
  border-top-color: var(--tw-prose-th-borders);
}

.prose :where(tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  vertical-align: top;
}

.prose :where(th, td):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  text-align: start;
}

.prose :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
  margin-bottom: 0;
}

.prose :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  color: var(--tw-prose-captions);
  font-size: 0.875em;
  line-height: 1.4285714;
  margin-top: 0.8571429em;
}

.prose{
  --tw-prose-body: #374151;
  --tw-prose-headings: #111827;
  --tw-prose-lead: #4b5563;
  --tw-prose-links: #111827;
  --tw-prose-bold: #111827;
  --tw-prose-counters: #6b7280;
  --tw-prose-bullets: #d1d5db;
  --tw-prose-hr: #e5e7eb;
  --tw-prose-quotes: #111827;
  --tw-prose-quote-borders: #e5e7eb;
  --tw-prose-captions: #6b7280;
  --tw-prose-kbd: #111827;
  --tw-prose-kbd-shadows: rgb(17 24 39 / 10%);
  --tw-prose-code: #111827;
  --tw-prose-pre-code: #e5e7eb;
  --tw-prose-pre-bg: #1f2937;
  --tw-prose-th-borders: #d1d5db;
  --tw-prose-td-borders: #e5e7eb;
  --tw-prose-invert-body: #d1d5db;
  --tw-prose-invert-headings: #fff;
  --tw-prose-invert-lead: #9ca3af;
  --tw-prose-invert-links: #fff;
  --tw-prose-invert-bold: #fff;
  --tw-prose-invert-counters: #9ca3af;
  --tw-prose-invert-bullets: #4b5563;
  --tw-prose-invert-hr: #374151;
  --tw-prose-invert-quotes: #f3f4f6;
  --tw-prose-invert-quote-borders: #374151;
  --tw-prose-invert-captions: #9ca3af;
  --tw-prose-invert-kbd: #fff;
  --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);
  --tw-prose-invert-code: #fff;
  --tw-prose-invert-pre-code: #d1d5db;
  --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
  --tw-prose-invert-th-borders: #4b5563;
  --tw-prose-invert-td-borders: #374151;
  font-size: 1rem;
  line-height: 1.75;
}

.prose :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
  margin-bottom: 0;
}

.prose :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0.375em;
}

.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0.375em;
}

.prose :where(.prose > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}

.prose :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.25em;
}

.prose :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-bottom: 1.25em;
}

.prose :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.25em;
}

.prose :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-bottom: 1.25em;
}

.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.75em;
  margin-bottom: 0.75em;
}

.prose :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}

.prose :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.5em;
  padding-inline-start: 1.625em;
}

.prose :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0;
}

.prose :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-end: 0;
}

.prose :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-top: 0.5714286em;
  padding-inline-end: 0.5714286em;
  padding-bottom: 0.5714286em;
  padding-inline-start: 0.5714286em;
}

.prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0;
}

.prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-end: 0;
}

.prose :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 2em;
  margin-bottom: 2em;
}

.prose :where(.prose > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose :where(.prose > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-bottom: 0;
}

.prose-lg{
  font-size: 1.125rem;
  line-height: 1.7777778;
}

.prose-lg :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.3333333em;
  margin-bottom: 1.3333333em;
}

.prose-lg :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 1.2222222em;
  line-height: 1.4545455;
  margin-top: 1.0909091em;
  margin-bottom: 1.0909091em;
}

.prose-lg :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.6666667em;
  margin-bottom: 1.6666667em;
  padding-inline-start: 1em;
}

.prose-lg :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 2.6666667em;
  margin-top: 0;
  margin-bottom: 0.8333333em;
  line-height: 1;
}

.prose-lg :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 1.6666667em;
  margin-top: 1.8666667em;
  margin-bottom: 1.0666667em;
  line-height: 1.3333333;
}

.prose-lg :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 1.3333333em;
  margin-top: 1.6666667em;
  margin-bottom: 0.6666667em;
  line-height: 1.5;
}

.prose-lg :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.7777778em;
  margin-bottom: 0.4444444em;
  line-height: 1.5555556;
}

.prose-lg :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.7777778em;
  margin-bottom: 1.7777778em;
}

.prose-lg :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.7777778em;
  margin-bottom: 1.7777778em;
}

.prose-lg :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
  margin-bottom: 0;
}

.prose-lg :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.7777778em;
  margin-bottom: 1.7777778em;
}

.prose-lg :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 0.8888889em;
  border-radius: 0.3125rem;
  padding-top: 0.2222222em;
  padding-inline-end: 0.4444444em;
  padding-bottom: 0.2222222em;
  padding-inline-start: 0.4444444em;
}

.prose-lg :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 0.8888889em;
}

.prose-lg :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 0.8666667em;
}

.prose-lg :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 0.875em;
}

.prose-lg :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 0.8888889em;
  line-height: 1.75;
  margin-top: 2em;
  margin-bottom: 2em;
  border-radius: 0.375rem;
  padding-top: 1em;
  padding-inline-end: 1.5em;
  padding-bottom: 1em;
  padding-inline-start: 1.5em;
}

.prose-lg :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.3333333em;
  margin-bottom: 1.3333333em;
  padding-inline-start: 1.5555556em;
}

.prose-lg :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.3333333em;
  margin-bottom: 1.3333333em;
  padding-inline-start: 1.5555556em;
}

.prose-lg :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.6666667em;
  margin-bottom: 0.6666667em;
}

.prose-lg :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0.4444444em;
}

.prose-lg :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0.4444444em;
}

.prose-lg :where(.prose-lg > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.8888889em;
  margin-bottom: 0.8888889em;
}

.prose-lg :where(.prose-lg > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.3333333em;
}

.prose-lg :where(.prose-lg > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-bottom: 1.3333333em;
}

.prose-lg :where(.prose-lg > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.3333333em;
}

.prose-lg :where(.prose-lg > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-bottom: 1.3333333em;
}

.prose-lg :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.8888889em;
  margin-bottom: 0.8888889em;
}

.prose-lg :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.3333333em;
  margin-bottom: 1.3333333em;
}

.prose-lg :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.3333333em;
}

.prose-lg :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0.6666667em;
  padding-inline-start: 1.5555556em;
}

.prose-lg :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 3.1111111em;
  margin-bottom: 3.1111111em;
}

.prose-lg :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose-lg :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose-lg :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose-lg :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose-lg :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 0.8888889em;
  line-height: 1.5;
}

.prose-lg :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-end: 0.75em;
  padding-bottom: 0.75em;
  padding-inline-start: 0.75em;
}

.prose-lg :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0;
}

.prose-lg :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-end: 0;
}

.prose-lg :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-top: 0.75em;
  padding-inline-end: 0.75em;
  padding-bottom: 0.75em;
  padding-inline-start: 0.75em;
}

.prose-lg :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-start: 0;
}

.prose-lg :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  padding-inline-end: 0;
}

.prose-lg :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 1.7777778em;
  margin-bottom: 1.7777778em;
}

.prose-lg :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
  margin-bottom: 0;
}

.prose-lg :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  font-size: 0.8888889em;
  line-height: 1.5;
  margin-top: 1em;
}

.prose-lg :where(.prose-lg > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-top: 0;
}

.prose-lg :where(.prose-lg > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)){
  margin-bottom: 0;
}

.prose-invert{
  --tw-prose-body: var(--tw-prose-invert-body);
  --tw-prose-headings: var(--tw-prose-invert-headings);
  --tw-prose-lead: var(--tw-prose-invert-lead);
  --tw-prose-links: var(--tw-prose-invert-links);
  --tw-prose-bold: var(--tw-prose-invert-bold);
  --tw-prose-counters: var(--tw-prose-invert-counters);
  --tw-prose-bullets: var(--tw-prose-invert-bullets);
  --tw-prose-hr: var(--tw-prose-invert-hr);
  --tw-prose-quotes: var(--tw-prose-invert-quotes);
  --tw-prose-quote-borders: var(--tw-prose-invert-quote-borders);
  --tw-prose-captions: var(--tw-prose-invert-captions);
  --tw-prose-kbd: var(--tw-prose-invert-kbd);
  --tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows);
  --tw-prose-code: var(--tw-prose-invert-code);
  --tw-prose-pre-code: var(--tw-prose-invert-pre-code);
  --tw-prose-pre-bg: var(--tw-prose-invert-pre-bg);
  --tw-prose-th-borders: var(--tw-prose-invert-th-borders);
  --tw-prose-td-borders: var(--tw-prose-invert-td-borders);
}

.surface-panel{
  background-color: var(--card);
  border: 1px solid var(--border);
  border-radius: calc(var(--radius) + 4px);
}

.btn-ember{
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border-radius: 9999px;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--primary-foreground);
  background-image: var(--gradient-ember);
  box-shadow: var(--shadow-ember-sm);
  transition: filter 0.2s ease;
}

.btn-ember:hover{
  filter: brightness(1.1);
}

.sr-only{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.pointer-events-none{
  pointer-events: none;
}

.visible{
  visibility: visible;
}

.invisible{
  visibility: hidden;
}

.collapse{
  visibility: collapse;
}

.fixed{
  position: fixed;
}

.absolute{
  position: absolute;
}

.relative{
  position: relative;
}

.sticky{
  position: sticky;
}

.inset-0{
  inset: 0px;
}

.inset-x-0{
  left: 0px;
  right: 0px;
}

.inset-y-0{
  top: 0px;
  bottom: 0px;
}

.bottom-0{
  bottom: 0px;
}

.bottom-1\/4{
  bottom: 25%;
}

.left-1\/2{
  left: 50%;
}

.left-1\/4{
  left: 25%;
}

.left-3{
  left: 0.75rem;
}

.left-4{
  left: 1rem;
}

.right-0{
  right: 0px;
}

.right-1\/4{
  right: 25%;
}

.right-2{
  right: 0.5rem;
}

.right-3{
  right: 0.75rem;
}

.right-4{
  right: 1rem;
}

.top-0{
  top: 0px;
}

.top-1\/4{
  top: 25%;
}

.top-2{
  top: 0.5rem;
}

.top-20{
  top: 5rem;
}

.top-24{
  top: 6rem;
}

.top-3{
  top: 0.75rem;
}

.top-4{
  top: 1rem;
}

.top-6{
  top: 1.5rem;
}

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

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

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

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

.z-\[9999\]{
  z-index: 9999;
}

.order-1{
  order: 1;
}

.order-2{
  order: 2;
}

.-mx-2{
  margin-left: -0.5rem;
  margin-right: -0.5rem;
}

.mx-auto{
  margin-left: auto;
  margin-right: auto;
}

.my-10{
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

.my-2{
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.my-4{
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.my-8{
  margin-top: 2rem;
  margin-bottom: 2rem;
}

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

.-mt-2{
  margin-top: -0.5rem;
}

.mb-0{
  margin-bottom: 0px;
}

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

.mb-10{
  margin-bottom: 2.5rem;
}

.mb-12{
  margin-bottom: 3rem;
}

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

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

.mb-20{
  margin-bottom: 5rem;
}

.mb-3{
  margin-bottom: 0.75rem;
}

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

.mb-5{
  margin-bottom: 1.25rem;
}

.mb-6{
  margin-bottom: 1.5rem;
}

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

.mb-auto{
  margin-bottom: auto;
}

.ml-1{
  margin-left: 0.25rem;
}

.ml-2{
  margin-left: 0.5rem;
}

.ml-4{
  margin-left: 1rem;
}

.mt-0{
  margin-top: 0px;
}

.mt-0\.5{
  margin-top: 0.125rem;
}

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

.mt-1\.5{
  margin-top: 0.375rem;
}

.mt-10{
  margin-top: 2.5rem;
}

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

.mt-14{
  margin-top: 3.5rem;
}

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

.mt-2{
  margin-top: 0.5rem;
}

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

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

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

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

.mt-8{
  margin-top: 2rem;
}

.mt-auto{
  margin-top: auto;
}

.line-clamp-2{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.line-clamp-5{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.block{
  display: block;
}

.inline-block{
  display: inline-block;
}

.inline{
  display: inline;
}

.flex{
  display: flex;
}

.inline-flex{
  display: inline-flex;
}

.table{
  display: table;
}

.grid{
  display: grid;
}

.contents{
  display: contents;
}

.hidden{
  display: none;
}

.aspect-\[4\/3\]{
  aspect-ratio: 4/3;
}

.aspect-\[9\/16\]{
  aspect-ratio: 9/16;
}

.aspect-square{
  aspect-ratio: 1 / 1;
}

.aspect-video{
  aspect-ratio: 16 / 9;
}

.h-0\.5{
  height: 0.125rem;
}

.h-1{
  height: 0.25rem;
}

.h-1\.5{
  height: 0.375rem;
}

.h-10{
  height: 2.5rem;
}

.h-11{
  height: 2.75rem;
}

.h-12{
  height: 3rem;
}

.h-14{
  height: 3.5rem;
}

.h-16{
  height: 4rem;
}

.h-2{
  height: 0.5rem;
}

.h-20{
  height: 5rem;
}

.h-24{
  height: 6rem;
}

.h-28{
  height: 7rem;
}

.h-3{
  height: 0.75rem;
}

.h-3\.5{
  height: 0.875rem;
}

.h-4{
  height: 1rem;
}

.h-40{
  height: 10rem;
}

.h-5{
  height: 1.25rem;
}

.h-56{
  height: 14rem;
}

.h-6{
  height: 1.5rem;
}

.h-7{
  height: 1.75rem;
}

.h-8{
  height: 2rem;
}

.h-9{
  height: 2.25rem;
}

.h-96{
  height: 24rem;
}

.h-auto{
  height: auto;
}

.h-full{
  height: 100%;
}

.max-h-\[50vh\]{
  max-height: 50vh;
}

.max-h-\[80px\]{
  max-height: 80px;
}

.max-h-\[90vh\]{
  max-height: 90vh;
}

.min-h-0{
  min-height: 0px;
}

.min-h-\[120px\]{
  min-height: 120px;
}

.min-h-\[150px\]{
  min-height: 150px;
}

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

.w-1{
  width: 0.25rem;
}

.w-1\.5{
  width: 0.375rem;
}

.w-10{
  width: 2.5rem;
}

.w-11{
  width: 2.75rem;
}

.w-12{
  width: 3rem;
}

.w-14{
  width: 3.5rem;
}

.w-16{
  width: 4rem;
}

.w-2{
  width: 0.5rem;
}

.w-20{
  width: 5rem;
}

.w-28{
  width: 7rem;
}

.w-3{
  width: 0.75rem;
}

.w-3\.5{
  width: 0.875rem;
}

.w-4{
  width: 1rem;
}

.w-5{
  width: 1.25rem;
}

.w-56{
  width: 14rem;
}

.w-6{
  width: 1.5rem;
}

.w-7{
  width: 1.75rem;
}

.w-8{
  width: 2rem;
}

.w-9{
  width: 2.25rem;
}

.w-96{
  width: 24rem;
}

.w-\[22rem\]{
  width: 22rem;
}

.w-auto{
  width: auto;
}

.w-full{
  width: 100%;
}

.w-max{
  width: -moz-max-content;
  width: max-content;
}

.w-px{
  width: 1px;
}

.w-screen{
  width: 100vw;
}

.w-\[220px\]{
  width: 220px;
}

.min-w-0{
  min-width: 0px;
}

.min-w-\[240px\]{
  min-width: 240px;
}

.max-w-2xl{
  max-width: 42rem;
}

.max-w-3xl{
  max-width: 48rem;
}

.max-w-4xl{
  max-width: 56rem;
}

.max-w-5xl{
  max-width: 64rem;
}

.max-w-6xl{
  max-width: 72rem;
}

.max-w-\[1177px\]{
  max-width: 1177px;
}

.max-w-\[1440px\]{
  max-width: 1440px;
}

.max-w-\[350px\]{
  max-width: 350px;
}

.max-w-\[500px\]{
  max-width: 500px;
}

.max-w-\[778px\]{
  max-width: 778px;
}

.max-w-\[90vw\]{
  max-width: 90vw;
}

.max-w-lg{
  max-width: 32rem;
}

.max-w-md{
  max-width: 28rem;
}

.max-w-none{
  max-width: none;
}

.max-w-xl{
  max-width: 36rem;
}

.flex-1{
  flex: 1 1 0%;
}

.flex-shrink{
  flex-shrink: 1;
}

.flex-shrink-0{
  flex-shrink: 0;
}

.shrink-0{
  flex-shrink: 0;
}

.border-collapse{
  border-collapse: collapse;
}

.-translate-x-1\/2{
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-4{
  --tw-translate-y: -1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-full{
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180{
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes fade-in{
  from{
    opacity: 0;
  }

  to{
    opacity: 1;
  }
}

.animate-fade-in{
  animation: fade-in 0.7s ease both;
}

@keyframes float-slow{
  0%, 100%{
    transform: translateY(0);
  }

  50%{
    transform: translateY(-8px);
  }
}

.animate-float{
  animation: float-slow 6s ease-in-out infinite;
}

@keyframes marquee{
  from{
    transform: translateX(0);
  }

  to{
    transform: translateX(-50%);
  }
}

.animate-marquee{
  animation: marquee 40s linear infinite;
}

@keyframes pulse{
  50%{
    opacity: .5;
  }
}

.animate-pulse{
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse-ember{
  0%, 100%{
    opacity: 0.55;
  }

  50%{
    opacity: 1;
  }
}

.animate-pulse-ember{
  animation: pulse-ember 2.4s ease-in-out infinite;
}

@keyframes slide-up{
  from{
    opacity: 0;
    transform: translateY(24px);
  }

  to{
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-slide-up{
  animation: slide-up 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes spin{
  to{
    transform: rotate(360deg);
  }
}

.animate-spin{
  animation: spin 1s linear infinite;
}

.cursor-not-allowed{
  cursor: not-allowed;
}

.cursor-pointer{
  cursor: pointer;
}

.resize{
  resize: both;
}

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

.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

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

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

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

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

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

.items-start{
  align-items: flex-start;
}

.items-end{
  align-items: flex-end;
}

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

.justify-start{
  justify-content: flex-start;
}

.justify-end{
  justify-content: flex-end;
}

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

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

.gap-0\.5{
  gap: 0.125rem;
}

.gap-1{
  gap: 0.25rem;
}

.gap-1\.5{
  gap: 0.375rem;
}

.gap-10{
  gap: 2.5rem;
}

.gap-12{
  gap: 3rem;
}

.gap-2{
  gap: 0.5rem;
}

.gap-2\.5{
  gap: 0.625rem;
}

.gap-3{
  gap: 0.75rem;
}

.gap-4{
  gap: 1rem;
}

.gap-6{
  gap: 1.5rem;
}

.gap-8{
  gap: 2rem;
}

.gap-x-8{
  -moz-column-gap: 2rem;
       column-gap: 2rem;
}

.gap-y-16{
  row-gap: 4rem;
}

.gap-y-8{
  row-gap: 2rem;
}

.space-y-1 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}

.space-y-1\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));
}

.space-y-12 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(3rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(3rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-2\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.625rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.space-y-8 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}

.overflow-hidden{
  overflow: hidden;
}

.overflow-x-auto{
  overflow-x: auto;
}

.overflow-y-auto{
  overflow-y: auto;
}

.truncate{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.whitespace-nowrap{
  white-space: nowrap;
}

.rounded-2xl{
  border-radius: calc(var(--radius) + 8px);
}

.rounded-3xl{
  border-radius: calc(var(--radius) + 12px);
}

.rounded-full{
  border-radius: 9999px;
}

.rounded-lg{
  border-radius: var(--radius);
}

.rounded-md{
  border-radius: calc(var(--radius) - 2px);
}

.rounded-none{
  border-radius: 0px;
}

.rounded-xl{
  border-radius: calc(var(--radius) + 4px);
}

.border{
  border-width: 1px;
}

.border-2{
  border-width: 2px;
}

.border-4{
  border-width: 4px;
}

.border-y{
  border-top-width: 1px;
  border-bottom-width: 1px;
}

.border-b{
  border-bottom-width: 1px;
}

.border-b-2{
  border-bottom-width: 2px;
}

.border-l{
  border-left-width: 1px;
}

.border-l-2{
  border-left-width: 2px;
}

.border-l-4{
  border-left-width: 4px;
}

.border-t{
  border-top-width: 1px;
}

.border-dashed{
  border-style: dashed;
}

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

.border-\[color\:var\(--primary\)\]{
  border-color: var(--primary);
}

.border-accent{
  border-color: var(--accent);
}

.border-accent-foreground{
  border-color: var(--accent-foreground);
}

.border-amber-100{
  --tw-border-opacity: 1;
  border-color: rgb(254 243 199 / var(--tw-border-opacity));
}

.border-amber-100\/0{
  border-color: rgb(254 243 199 / 0);
}

.border-amber-100\/10{
  border-color: rgb(254 243 199 / 0.1);
}

.border-amber-100\/100{
  border-color: rgb(254 243 199 / 1);
}

.border-amber-100\/15{
  border-color: rgb(254 243 199 / 0.15);
}

.border-amber-100\/20{
  border-color: rgb(254 243 199 / 0.2);
}

.border-amber-100\/25{
  border-color: rgb(254 243 199 / 0.25);
}

.border-amber-100\/30{
  border-color: rgb(254 243 199 / 0.3);
}

.border-amber-100\/35{
  border-color: rgb(254 243 199 / 0.35);
}

.border-amber-100\/40{
  border-color: rgb(254 243 199 / 0.4);
}

.border-amber-100\/45{
  border-color: rgb(254 243 199 / 0.45);
}

.border-amber-100\/5{
  border-color: rgb(254 243 199 / 0.05);
}

.border-amber-100\/50{
  border-color: rgb(254 243 199 / 0.5);
}

.border-amber-100\/55{
  border-color: rgb(254 243 199 / 0.55);
}

.border-amber-100\/60{
  border-color: rgb(254 243 199 / 0.6);
}

.border-amber-100\/65{
  border-color: rgb(254 243 199 / 0.65);
}

.border-amber-100\/70{
  border-color: rgb(254 243 199 / 0.7);
}

.border-amber-100\/75{
  border-color: rgb(254 243 199 / 0.75);
}

.border-amber-100\/80{
  border-color: rgb(254 243 199 / 0.8);
}

.border-amber-100\/85{
  border-color: rgb(254 243 199 / 0.85);
}

.border-amber-100\/90{
  border-color: rgb(254 243 199 / 0.9);
}

.border-amber-100\/95{
  border-color: rgb(254 243 199 / 0.95);
}

.border-amber-200{
  --tw-border-opacity: 1;
  border-color: rgb(253 230 138 / var(--tw-border-opacity));
}

.border-amber-200\/0{
  border-color: rgb(253 230 138 / 0);
}

.border-amber-200\/10{
  border-color: rgb(253 230 138 / 0.1);
}

.border-amber-200\/100{
  border-color: rgb(253 230 138 / 1);
}

.border-amber-200\/15{
  border-color: rgb(253 230 138 / 0.15);
}

.border-amber-200\/20{
  border-color: rgb(253 230 138 / 0.2);
}

.border-amber-200\/25{
  border-color: rgb(253 230 138 / 0.25);
}

.border-amber-200\/30{
  border-color: rgb(253 230 138 / 0.3);
}

.border-amber-200\/35{
  border-color: rgb(253 230 138 / 0.35);
}

.border-amber-200\/40{
  border-color: rgb(253 230 138 / 0.4);
}

.border-amber-200\/45{
  border-color: rgb(253 230 138 / 0.45);
}

.border-amber-200\/5{
  border-color: rgb(253 230 138 / 0.05);
}

.border-amber-200\/50{
  border-color: rgb(253 230 138 / 0.5);
}

.border-amber-200\/55{
  border-color: rgb(253 230 138 / 0.55);
}

.border-amber-200\/60{
  border-color: rgb(253 230 138 / 0.6);
}

.border-amber-200\/65{
  border-color: rgb(253 230 138 / 0.65);
}

.border-amber-200\/70{
  border-color: rgb(253 230 138 / 0.7);
}

.border-amber-200\/75{
  border-color: rgb(253 230 138 / 0.75);
}

.border-amber-200\/80{
  border-color: rgb(253 230 138 / 0.8);
}

.border-amber-200\/85{
  border-color: rgb(253 230 138 / 0.85);
}

.border-amber-200\/90{
  border-color: rgb(253 230 138 / 0.9);
}

.border-amber-200\/95{
  border-color: rgb(253 230 138 / 0.95);
}

.border-amber-300{
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity));
}

.border-amber-300\/0{
  border-color: rgb(252 211 77 / 0);
}

.border-amber-300\/10{
  border-color: rgb(252 211 77 / 0.1);
}

.border-amber-300\/100{
  border-color: rgb(252 211 77 / 1);
}

.border-amber-300\/15{
  border-color: rgb(252 211 77 / 0.15);
}

.border-amber-300\/20{
  border-color: rgb(252 211 77 / 0.2);
}

.border-amber-300\/25{
  border-color: rgb(252 211 77 / 0.25);
}

.border-amber-300\/30{
  border-color: rgb(252 211 77 / 0.3);
}

.border-amber-300\/35{
  border-color: rgb(252 211 77 / 0.35);
}

.border-amber-300\/40{
  border-color: rgb(252 211 77 / 0.4);
}

.border-amber-300\/45{
  border-color: rgb(252 211 77 / 0.45);
}

.border-amber-300\/5{
  border-color: rgb(252 211 77 / 0.05);
}

.border-amber-300\/50{
  border-color: rgb(252 211 77 / 0.5);
}

.border-amber-300\/55{
  border-color: rgb(252 211 77 / 0.55);
}

.border-amber-300\/60{
  border-color: rgb(252 211 77 / 0.6);
}

.border-amber-300\/65{
  border-color: rgb(252 211 77 / 0.65);
}

.border-amber-300\/70{
  border-color: rgb(252 211 77 / 0.7);
}

.border-amber-300\/75{
  border-color: rgb(252 211 77 / 0.75);
}

.border-amber-300\/80{
  border-color: rgb(252 211 77 / 0.8);
}

.border-amber-300\/85{
  border-color: rgb(252 211 77 / 0.85);
}

.border-amber-300\/90{
  border-color: rgb(252 211 77 / 0.9);
}

.border-amber-300\/95{
  border-color: rgb(252 211 77 / 0.95);
}

.border-amber-400{
  --tw-border-opacity: 1;
  border-color: rgb(251 191 36 / var(--tw-border-opacity));
}

.border-amber-400\/0{
  border-color: rgb(251 191 36 / 0);
}

.border-amber-400\/10{
  border-color: rgb(251 191 36 / 0.1);
}

.border-amber-400\/100{
  border-color: rgb(251 191 36 / 1);
}

.border-amber-400\/15{
  border-color: rgb(251 191 36 / 0.15);
}

.border-amber-400\/20{
  border-color: rgb(251 191 36 / 0.2);
}

.border-amber-400\/25{
  border-color: rgb(251 191 36 / 0.25);
}

.border-amber-400\/30{
  border-color: rgb(251 191 36 / 0.3);
}

.border-amber-400\/35{
  border-color: rgb(251 191 36 / 0.35);
}

.border-amber-400\/40{
  border-color: rgb(251 191 36 / 0.4);
}

.border-amber-400\/45{
  border-color: rgb(251 191 36 / 0.45);
}

.border-amber-400\/5{
  border-color: rgb(251 191 36 / 0.05);
}

.border-amber-400\/50{
  border-color: rgb(251 191 36 / 0.5);
}

.border-amber-400\/55{
  border-color: rgb(251 191 36 / 0.55);
}

.border-amber-400\/60{
  border-color: rgb(251 191 36 / 0.6);
}

.border-amber-400\/65{
  border-color: rgb(251 191 36 / 0.65);
}

.border-amber-400\/70{
  border-color: rgb(251 191 36 / 0.7);
}

.border-amber-400\/75{
  border-color: rgb(251 191 36 / 0.75);
}

.border-amber-400\/80{
  border-color: rgb(251 191 36 / 0.8);
}

.border-amber-400\/85{
  border-color: rgb(251 191 36 / 0.85);
}

.border-amber-400\/90{
  border-color: rgb(251 191 36 / 0.9);
}

.border-amber-400\/95{
  border-color: rgb(251 191 36 / 0.95);
}

.border-amber-50{
  --tw-border-opacity: 1;
  border-color: rgb(255 251 235 / var(--tw-border-opacity));
}

.border-amber-50\/0{
  border-color: rgb(255 251 235 / 0);
}

.border-amber-50\/10{
  border-color: rgb(255 251 235 / 0.1);
}

.border-amber-50\/100{
  border-color: rgb(255 251 235 / 1);
}

.border-amber-50\/15{
  border-color: rgb(255 251 235 / 0.15);
}

.border-amber-50\/20{
  border-color: rgb(255 251 235 / 0.2);
}

.border-amber-50\/25{
  border-color: rgb(255 251 235 / 0.25);
}

.border-amber-50\/30{
  border-color: rgb(255 251 235 / 0.3);
}

.border-amber-50\/35{
  border-color: rgb(255 251 235 / 0.35);
}

.border-amber-50\/40{
  border-color: rgb(255 251 235 / 0.4);
}

.border-amber-50\/45{
  border-color: rgb(255 251 235 / 0.45);
}

.border-amber-50\/5{
  border-color: rgb(255 251 235 / 0.05);
}

.border-amber-50\/50{
  border-color: rgb(255 251 235 / 0.5);
}

.border-amber-50\/55{
  border-color: rgb(255 251 235 / 0.55);
}

.border-amber-50\/60{
  border-color: rgb(255 251 235 / 0.6);
}

.border-amber-50\/65{
  border-color: rgb(255 251 235 / 0.65);
}

.border-amber-50\/70{
  border-color: rgb(255 251 235 / 0.7);
}

.border-amber-50\/75{
  border-color: rgb(255 251 235 / 0.75);
}

.border-amber-50\/80{
  border-color: rgb(255 251 235 / 0.8);
}

.border-amber-50\/85{
  border-color: rgb(255 251 235 / 0.85);
}

.border-amber-50\/90{
  border-color: rgb(255 251 235 / 0.9);
}

.border-amber-50\/95{
  border-color: rgb(255 251 235 / 0.95);
}

.border-amber-500{
  --tw-border-opacity: 1;
  border-color: rgb(245 158 11 / var(--tw-border-opacity));
}

.border-amber-500\/0{
  border-color: rgb(245 158 11 / 0);
}

.border-amber-500\/10{
  border-color: rgb(245 158 11 / 0.1);
}

.border-amber-500\/100{
  border-color: rgb(245 158 11 / 1);
}

.border-amber-500\/15{
  border-color: rgb(245 158 11 / 0.15);
}

.border-amber-500\/20{
  border-color: rgb(245 158 11 / 0.2);
}

.border-amber-500\/25{
  border-color: rgb(245 158 11 / 0.25);
}

.border-amber-500\/30{
  border-color: rgb(245 158 11 / 0.3);
}

.border-amber-500\/35{
  border-color: rgb(245 158 11 / 0.35);
}

.border-amber-500\/40{
  border-color: rgb(245 158 11 / 0.4);
}

.border-amber-500\/45{
  border-color: rgb(245 158 11 / 0.45);
}

.border-amber-500\/5{
  border-color: rgb(245 158 11 / 0.05);
}

.border-amber-500\/50{
  border-color: rgb(245 158 11 / 0.5);
}

.border-amber-500\/55{
  border-color: rgb(245 158 11 / 0.55);
}

.border-amber-500\/60{
  border-color: rgb(245 158 11 / 0.6);
}

.border-amber-500\/65{
  border-color: rgb(245 158 11 / 0.65);
}

.border-amber-500\/70{
  border-color: rgb(245 158 11 / 0.7);
}

.border-amber-500\/75{
  border-color: rgb(245 158 11 / 0.75);
}

.border-amber-500\/80{
  border-color: rgb(245 158 11 / 0.8);
}

.border-amber-500\/85{
  border-color: rgb(245 158 11 / 0.85);
}

.border-amber-500\/90{
  border-color: rgb(245 158 11 / 0.9);
}

.border-amber-500\/95{
  border-color: rgb(245 158 11 / 0.95);
}

.border-amber-600{
  --tw-border-opacity: 1;
  border-color: rgb(217 119 6 / var(--tw-border-opacity));
}

.border-amber-600\/0{
  border-color: rgb(217 119 6 / 0);
}

.border-amber-600\/10{
  border-color: rgb(217 119 6 / 0.1);
}

.border-amber-600\/100{
  border-color: rgb(217 119 6 / 1);
}

.border-amber-600\/15{
  border-color: rgb(217 119 6 / 0.15);
}

.border-amber-600\/20{
  border-color: rgb(217 119 6 / 0.2);
}

.border-amber-600\/25{
  border-color: rgb(217 119 6 / 0.25);
}

.border-amber-600\/30{
  border-color: rgb(217 119 6 / 0.3);
}

.border-amber-600\/35{
  border-color: rgb(217 119 6 / 0.35);
}

.border-amber-600\/40{
  border-color: rgb(217 119 6 / 0.4);
}

.border-amber-600\/45{
  border-color: rgb(217 119 6 / 0.45);
}

.border-amber-600\/5{
  border-color: rgb(217 119 6 / 0.05);
}

.border-amber-600\/50{
  border-color: rgb(217 119 6 / 0.5);
}

.border-amber-600\/55{
  border-color: rgb(217 119 6 / 0.55);
}

.border-amber-600\/60{
  border-color: rgb(217 119 6 / 0.6);
}

.border-amber-600\/65{
  border-color: rgb(217 119 6 / 0.65);
}

.border-amber-600\/70{
  border-color: rgb(217 119 6 / 0.7);
}

.border-amber-600\/75{
  border-color: rgb(217 119 6 / 0.75);
}

.border-amber-600\/80{
  border-color: rgb(217 119 6 / 0.8);
}

.border-amber-600\/85{
  border-color: rgb(217 119 6 / 0.85);
}

.border-amber-600\/90{
  border-color: rgb(217 119 6 / 0.9);
}

.border-amber-600\/95{
  border-color: rgb(217 119 6 / 0.95);
}

.border-amber-700{
  --tw-border-opacity: 1;
  border-color: rgb(180 83 9 / var(--tw-border-opacity));
}

.border-amber-700\/0{
  border-color: rgb(180 83 9 / 0);
}

.border-amber-700\/10{
  border-color: rgb(180 83 9 / 0.1);
}

.border-amber-700\/100{
  border-color: rgb(180 83 9 / 1);
}

.border-amber-700\/15{
  border-color: rgb(180 83 9 / 0.15);
}

.border-amber-700\/20{
  border-color: rgb(180 83 9 / 0.2);
}

.border-amber-700\/25{
  border-color: rgb(180 83 9 / 0.25);
}

.border-amber-700\/30{
  border-color: rgb(180 83 9 / 0.3);
}

.border-amber-700\/35{
  border-color: rgb(180 83 9 / 0.35);
}

.border-amber-700\/40{
  border-color: rgb(180 83 9 / 0.4);
}

.border-amber-700\/45{
  border-color: rgb(180 83 9 / 0.45);
}

.border-amber-700\/5{
  border-color: rgb(180 83 9 / 0.05);
}

.border-amber-700\/50{
  border-color: rgb(180 83 9 / 0.5);
}

.border-amber-700\/55{
  border-color: rgb(180 83 9 / 0.55);
}

.border-amber-700\/60{
  border-color: rgb(180 83 9 / 0.6);
}

.border-amber-700\/65{
  border-color: rgb(180 83 9 / 0.65);
}

.border-amber-700\/70{
  border-color: rgb(180 83 9 / 0.7);
}

.border-amber-700\/75{
  border-color: rgb(180 83 9 / 0.75);
}

.border-amber-700\/80{
  border-color: rgb(180 83 9 / 0.8);
}

.border-amber-700\/85{
  border-color: rgb(180 83 9 / 0.85);
}

.border-amber-700\/90{
  border-color: rgb(180 83 9 / 0.9);
}

.border-amber-700\/95{
  border-color: rgb(180 83 9 / 0.95);
}

.border-amber-800{
  --tw-border-opacity: 1;
  border-color: rgb(146 64 14 / var(--tw-border-opacity));
}

.border-amber-800\/0{
  border-color: rgb(146 64 14 / 0);
}

.border-amber-800\/10{
  border-color: rgb(146 64 14 / 0.1);
}

.border-amber-800\/100{
  border-color: rgb(146 64 14 / 1);
}

.border-amber-800\/15{
  border-color: rgb(146 64 14 / 0.15);
}

.border-amber-800\/20{
  border-color: rgb(146 64 14 / 0.2);
}

.border-amber-800\/25{
  border-color: rgb(146 64 14 / 0.25);
}

.border-amber-800\/30{
  border-color: rgb(146 64 14 / 0.3);
}

.border-amber-800\/35{
  border-color: rgb(146 64 14 / 0.35);
}

.border-amber-800\/40{
  border-color: rgb(146 64 14 / 0.4);
}

.border-amber-800\/45{
  border-color: rgb(146 64 14 / 0.45);
}

.border-amber-800\/5{
  border-color: rgb(146 64 14 / 0.05);
}

.border-amber-800\/50{
  border-color: rgb(146 64 14 / 0.5);
}

.border-amber-800\/55{
  border-color: rgb(146 64 14 / 0.55);
}

.border-amber-800\/60{
  border-color: rgb(146 64 14 / 0.6);
}

.border-amber-800\/65{
  border-color: rgb(146 64 14 / 0.65);
}

.border-amber-800\/70{
  border-color: rgb(146 64 14 / 0.7);
}

.border-amber-800\/75{
  border-color: rgb(146 64 14 / 0.75);
}

.border-amber-800\/80{
  border-color: rgb(146 64 14 / 0.8);
}

.border-amber-800\/85{
  border-color: rgb(146 64 14 / 0.85);
}

.border-amber-800\/90{
  border-color: rgb(146 64 14 / 0.9);
}

.border-amber-800\/95{
  border-color: rgb(146 64 14 / 0.95);
}

.border-amber-900{
  --tw-border-opacity: 1;
  border-color: rgb(120 53 15 / var(--tw-border-opacity));
}

.border-amber-900\/0{
  border-color: rgb(120 53 15 / 0);
}

.border-amber-900\/10{
  border-color: rgb(120 53 15 / 0.1);
}

.border-amber-900\/100{
  border-color: rgb(120 53 15 / 1);
}

.border-amber-900\/15{
  border-color: rgb(120 53 15 / 0.15);
}

.border-amber-900\/20{
  border-color: rgb(120 53 15 / 0.2);
}

.border-amber-900\/25{
  border-color: rgb(120 53 15 / 0.25);
}

.border-amber-900\/30{
  border-color: rgb(120 53 15 / 0.3);
}

.border-amber-900\/35{
  border-color: rgb(120 53 15 / 0.35);
}

.border-amber-900\/40{
  border-color: rgb(120 53 15 / 0.4);
}

.border-amber-900\/45{
  border-color: rgb(120 53 15 / 0.45);
}

.border-amber-900\/5{
  border-color: rgb(120 53 15 / 0.05);
}

.border-amber-900\/50{
  border-color: rgb(120 53 15 / 0.5);
}

.border-amber-900\/55{
  border-color: rgb(120 53 15 / 0.55);
}

.border-amber-900\/60{
  border-color: rgb(120 53 15 / 0.6);
}

.border-amber-900\/65{
  border-color: rgb(120 53 15 / 0.65);
}

.border-amber-900\/70{
  border-color: rgb(120 53 15 / 0.7);
}

.border-amber-900\/75{
  border-color: rgb(120 53 15 / 0.75);
}

.border-amber-900\/80{
  border-color: rgb(120 53 15 / 0.8);
}

.border-amber-900\/85{
  border-color: rgb(120 53 15 / 0.85);
}

.border-amber-900\/90{
  border-color: rgb(120 53 15 / 0.9);
}

.border-amber-900\/95{
  border-color: rgb(120 53 15 / 0.95);
}

.border-amber-950{
  --tw-border-opacity: 1;
  border-color: rgb(69 26 3 / var(--tw-border-opacity));
}

.border-amber-950\/0{
  border-color: rgb(69 26 3 / 0);
}

.border-amber-950\/10{
  border-color: rgb(69 26 3 / 0.1);
}

.border-amber-950\/100{
  border-color: rgb(69 26 3 / 1);
}

.border-amber-950\/15{
  border-color: rgb(69 26 3 / 0.15);
}

.border-amber-950\/20{
  border-color: rgb(69 26 3 / 0.2);
}

.border-amber-950\/25{
  border-color: rgb(69 26 3 / 0.25);
}

.border-amber-950\/30{
  border-color: rgb(69 26 3 / 0.3);
}

.border-amber-950\/35{
  border-color: rgb(69 26 3 / 0.35);
}

.border-amber-950\/40{
  border-color: rgb(69 26 3 / 0.4);
}

.border-amber-950\/45{
  border-color: rgb(69 26 3 / 0.45);
}

.border-amber-950\/5{
  border-color: rgb(69 26 3 / 0.05);
}

.border-amber-950\/50{
  border-color: rgb(69 26 3 / 0.5);
}

.border-amber-950\/55{
  border-color: rgb(69 26 3 / 0.55);
}

.border-amber-950\/60{
  border-color: rgb(69 26 3 / 0.6);
}

.border-amber-950\/65{
  border-color: rgb(69 26 3 / 0.65);
}

.border-amber-950\/70{
  border-color: rgb(69 26 3 / 0.7);
}

.border-amber-950\/75{
  border-color: rgb(69 26 3 / 0.75);
}

.border-amber-950\/80{
  border-color: rgb(69 26 3 / 0.8);
}

.border-amber-950\/85{
  border-color: rgb(69 26 3 / 0.85);
}

.border-amber-950\/90{
  border-color: rgb(69 26 3 / 0.9);
}

.border-amber-950\/95{
  border-color: rgb(69 26 3 / 0.95);
}

.border-amber-glow{
  border-color: var(--amber-glow);
}

.border-background{
  border-color: var(--background);
}

.border-border{
  border-color: var(--border);
}

.border-destructive{
  border-color: var(--destructive);
}

.border-destructive-foreground{
  border-color: var(--destructive-foreground);
}

.border-ember{
  border-color: var(--primary);
}

.border-emerald-200{
  --tw-border-opacity: 1;
  border-color: rgb(167 243 208 / var(--tw-border-opacity));
}

.border-emerald-500\/30{
  border-color: rgb(16 185 129 / 0.3);
}

.border-emerald-700{
  --tw-border-opacity: 1;
  border-color: rgb(4 120 87 / var(--tw-border-opacity));
}

.border-emerald-700\/20{
  border-color: rgb(4 120 87 / 0.2);
}

.border-gray-200{
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity));
}

.border-gray-300{
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity));
}

.border-green-200{
  --tw-border-opacity: 1;
  border-color: rgb(187 247 208 / var(--tw-border-opacity));
}

.border-muted{
  border-color: var(--muted);
}

.border-muted-foreground{
  border-color: var(--muted-foreground);
}

.border-neutral-300{
  --tw-border-opacity: 1;
  border-color: rgb(212 212 212 / var(--tw-border-opacity));
}

.border-primary{
  border-color: var(--primary);
}

.border-primary-foreground{
  border-color: var(--primary-foreground);
}

.border-primary-glow{
  border-color: var(--primary-glow);
}

.border-red-200{
  --tw-border-opacity: 1;
  border-color: rgb(254 202 202 / var(--tw-border-opacity));
}

.border-red-300{
  --tw-border-opacity: 1;
  border-color: rgb(252 165 165 / var(--tw-border-opacity));
}

.border-sky-200{
  --tw-border-opacity: 1;
  border-color: rgb(186 230 253 / var(--tw-border-opacity));
}

.border-surface{
  border-color: var(--surface);
}

.border-surface-2{
  border-color: var(--surface-2);
}

.border-transparent{
  border-color: transparent;
}

.border-violet-200{
  --tw-border-opacity: 1;
  border-color: rgb(221 214 254 / var(--tw-border-opacity));
}

.border-white{
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity));
}

.border-white\/20{
  border-color: rgb(255 255 255 / 0.2);
}

.bg-accent{
  background-color: var(--accent);
}

.bg-accent-foreground{
  background-color: var(--accent-foreground);
}

.bg-amber-100{
  --tw-bg-opacity: 1;
  background-color: rgb(254 243 199 / var(--tw-bg-opacity));
}

.bg-amber-100\/0{
  background-color: rgb(254 243 199 / 0);
}

.bg-amber-100\/10{
  background-color: rgb(254 243 199 / 0.1);
}

.bg-amber-100\/100{
  background-color: rgb(254 243 199 / 1);
}

.bg-amber-100\/15{
  background-color: rgb(254 243 199 / 0.15);
}

.bg-amber-100\/20{
  background-color: rgb(254 243 199 / 0.2);
}

.bg-amber-100\/25{
  background-color: rgb(254 243 199 / 0.25);
}

.bg-amber-100\/30{
  background-color: rgb(254 243 199 / 0.3);
}

.bg-amber-100\/35{
  background-color: rgb(254 243 199 / 0.35);
}

.bg-amber-100\/40{
  background-color: rgb(254 243 199 / 0.4);
}

.bg-amber-100\/45{
  background-color: rgb(254 243 199 / 0.45);
}

.bg-amber-100\/5{
  background-color: rgb(254 243 199 / 0.05);
}

.bg-amber-100\/50{
  background-color: rgb(254 243 199 / 0.5);
}

.bg-amber-100\/55{
  background-color: rgb(254 243 199 / 0.55);
}

.bg-amber-100\/60{
  background-color: rgb(254 243 199 / 0.6);
}

.bg-amber-100\/65{
  background-color: rgb(254 243 199 / 0.65);
}

.bg-amber-100\/70{
  background-color: rgb(254 243 199 / 0.7);
}

.bg-amber-100\/75{
  background-color: rgb(254 243 199 / 0.75);
}

.bg-amber-100\/80{
  background-color: rgb(254 243 199 / 0.8);
}

.bg-amber-100\/85{
  background-color: rgb(254 243 199 / 0.85);
}

.bg-amber-100\/90{
  background-color: rgb(254 243 199 / 0.9);
}

.bg-amber-100\/95{
  background-color: rgb(254 243 199 / 0.95);
}

.bg-amber-200{
  --tw-bg-opacity: 1;
  background-color: rgb(253 230 138 / var(--tw-bg-opacity));
}

.bg-amber-200\/0{
  background-color: rgb(253 230 138 / 0);
}

.bg-amber-200\/10{
  background-color: rgb(253 230 138 / 0.1);
}

.bg-amber-200\/100{
  background-color: rgb(253 230 138 / 1);
}

.bg-amber-200\/15{
  background-color: rgb(253 230 138 / 0.15);
}

.bg-amber-200\/20{
  background-color: rgb(253 230 138 / 0.2);
}

.bg-amber-200\/25{
  background-color: rgb(253 230 138 / 0.25);
}

.bg-amber-200\/30{
  background-color: rgb(253 230 138 / 0.3);
}

.bg-amber-200\/35{
  background-color: rgb(253 230 138 / 0.35);
}

.bg-amber-200\/40{
  background-color: rgb(253 230 138 / 0.4);
}

.bg-amber-200\/45{
  background-color: rgb(253 230 138 / 0.45);
}

.bg-amber-200\/5{
  background-color: rgb(253 230 138 / 0.05);
}

.bg-amber-200\/50{
  background-color: rgb(253 230 138 / 0.5);
}

.bg-amber-200\/55{
  background-color: rgb(253 230 138 / 0.55);
}

.bg-amber-200\/60{
  background-color: rgb(253 230 138 / 0.6);
}

.bg-amber-200\/65{
  background-color: rgb(253 230 138 / 0.65);
}

.bg-amber-200\/70{
  background-color: rgb(253 230 138 / 0.7);
}

.bg-amber-200\/75{
  background-color: rgb(253 230 138 / 0.75);
}

.bg-amber-200\/80{
  background-color: rgb(253 230 138 / 0.8);
}

.bg-amber-200\/85{
  background-color: rgb(253 230 138 / 0.85);
}

.bg-amber-200\/90{
  background-color: rgb(253 230 138 / 0.9);
}

.bg-amber-200\/95{
  background-color: rgb(253 230 138 / 0.95);
}

.bg-amber-300{
  --tw-bg-opacity: 1;
  background-color: rgb(252 211 77 / var(--tw-bg-opacity));
}

.bg-amber-300\/0{
  background-color: rgb(252 211 77 / 0);
}

.bg-amber-300\/10{
  background-color: rgb(252 211 77 / 0.1);
}

.bg-amber-300\/100{
  background-color: rgb(252 211 77 / 1);
}

.bg-amber-300\/15{
  background-color: rgb(252 211 77 / 0.15);
}

.bg-amber-300\/20{
  background-color: rgb(252 211 77 / 0.2);
}

.bg-amber-300\/25{
  background-color: rgb(252 211 77 / 0.25);
}

.bg-amber-300\/30{
  background-color: rgb(252 211 77 / 0.3);
}

.bg-amber-300\/35{
  background-color: rgb(252 211 77 / 0.35);
}

.bg-amber-300\/40{
  background-color: rgb(252 211 77 / 0.4);
}

.bg-amber-300\/45{
  background-color: rgb(252 211 77 / 0.45);
}

.bg-amber-300\/5{
  background-color: rgb(252 211 77 / 0.05);
}

.bg-amber-300\/50{
  background-color: rgb(252 211 77 / 0.5);
}

.bg-amber-300\/55{
  background-color: rgb(252 211 77 / 0.55);
}

.bg-amber-300\/60{
  background-color: rgb(252 211 77 / 0.6);
}

.bg-amber-300\/65{
  background-color: rgb(252 211 77 / 0.65);
}

.bg-amber-300\/70{
  background-color: rgb(252 211 77 / 0.7);
}

.bg-amber-300\/75{
  background-color: rgb(252 211 77 / 0.75);
}

.bg-amber-300\/80{
  background-color: rgb(252 211 77 / 0.8);
}

.bg-amber-300\/85{
  background-color: rgb(252 211 77 / 0.85);
}

.bg-amber-300\/90{
  background-color: rgb(252 211 77 / 0.9);
}

.bg-amber-300\/95{
  background-color: rgb(252 211 77 / 0.95);
}

.bg-amber-400{
  --tw-bg-opacity: 1;
  background-color: rgb(251 191 36 / var(--tw-bg-opacity));
}

.bg-amber-400\/0{
  background-color: rgb(251 191 36 / 0);
}

.bg-amber-400\/10{
  background-color: rgb(251 191 36 / 0.1);
}

.bg-amber-400\/100{
  background-color: rgb(251 191 36 / 1);
}

.bg-amber-400\/15{
  background-color: rgb(251 191 36 / 0.15);
}

.bg-amber-400\/20{
  background-color: rgb(251 191 36 / 0.2);
}

.bg-amber-400\/25{
  background-color: rgb(251 191 36 / 0.25);
}

.bg-amber-400\/30{
  background-color: rgb(251 191 36 / 0.3);
}

.bg-amber-400\/35{
  background-color: rgb(251 191 36 / 0.35);
}

.bg-amber-400\/40{
  background-color: rgb(251 191 36 / 0.4);
}

.bg-amber-400\/45{
  background-color: rgb(251 191 36 / 0.45);
}

.bg-amber-400\/5{
  background-color: rgb(251 191 36 / 0.05);
}

.bg-amber-400\/50{
  background-color: rgb(251 191 36 / 0.5);
}

.bg-amber-400\/55{
  background-color: rgb(251 191 36 / 0.55);
}

.bg-amber-400\/60{
  background-color: rgb(251 191 36 / 0.6);
}

.bg-amber-400\/65{
  background-color: rgb(251 191 36 / 0.65);
}

.bg-amber-400\/70{
  background-color: rgb(251 191 36 / 0.7);
}

.bg-amber-400\/75{
  background-color: rgb(251 191 36 / 0.75);
}

.bg-amber-400\/80{
  background-color: rgb(251 191 36 / 0.8);
}

.bg-amber-400\/85{
  background-color: rgb(251 191 36 / 0.85);
}

.bg-amber-400\/90{
  background-color: rgb(251 191 36 / 0.9);
}

.bg-amber-400\/95{
  background-color: rgb(251 191 36 / 0.95);
}

.bg-amber-50{
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity));
}

.bg-amber-50\/0{
  background-color: rgb(255 251 235 / 0);
}

.bg-amber-50\/10{
  background-color: rgb(255 251 235 / 0.1);
}

.bg-amber-50\/100{
  background-color: rgb(255 251 235 / 1);
}

.bg-amber-50\/15{
  background-color: rgb(255 251 235 / 0.15);
}

.bg-amber-50\/20{
  background-color: rgb(255 251 235 / 0.2);
}

.bg-amber-50\/25{
  background-color: rgb(255 251 235 / 0.25);
}

.bg-amber-50\/30{
  background-color: rgb(255 251 235 / 0.3);
}

.bg-amber-50\/35{
  background-color: rgb(255 251 235 / 0.35);
}

.bg-amber-50\/40{
  background-color: rgb(255 251 235 / 0.4);
}

.bg-amber-50\/45{
  background-color: rgb(255 251 235 / 0.45);
}

.bg-amber-50\/5{
  background-color: rgb(255 251 235 / 0.05);
}

.bg-amber-50\/50{
  background-color: rgb(255 251 235 / 0.5);
}

.bg-amber-50\/55{
  background-color: rgb(255 251 235 / 0.55);
}

.bg-amber-50\/60{
  background-color: rgb(255 251 235 / 0.6);
}

.bg-amber-50\/65{
  background-color: rgb(255 251 235 / 0.65);
}

.bg-amber-50\/70{
  background-color: rgb(255 251 235 / 0.7);
}

.bg-amber-50\/75{
  background-color: rgb(255 251 235 / 0.75);
}

.bg-amber-50\/80{
  background-color: rgb(255 251 235 / 0.8);
}

.bg-amber-50\/85{
  background-color: rgb(255 251 235 / 0.85);
}

.bg-amber-50\/90{
  background-color: rgb(255 251 235 / 0.9);
}

.bg-amber-50\/95{
  background-color: rgb(255 251 235 / 0.95);
}

.bg-amber-500{
  --tw-bg-opacity: 1;
  background-color: rgb(245 158 11 / var(--tw-bg-opacity));
}

.bg-amber-500\/0{
  background-color: rgb(245 158 11 / 0);
}

.bg-amber-500\/10{
  background-color: rgb(245 158 11 / 0.1);
}

.bg-amber-500\/100{
  background-color: rgb(245 158 11 / 1);
}

.bg-amber-500\/15{
  background-color: rgb(245 158 11 / 0.15);
}

.bg-amber-500\/20{
  background-color: rgb(245 158 11 / 0.2);
}

.bg-amber-500\/25{
  background-color: rgb(245 158 11 / 0.25);
}

.bg-amber-500\/30{
  background-color: rgb(245 158 11 / 0.3);
}

.bg-amber-500\/35{
  background-color: rgb(245 158 11 / 0.35);
}

.bg-amber-500\/40{
  background-color: rgb(245 158 11 / 0.4);
}

.bg-amber-500\/45{
  background-color: rgb(245 158 11 / 0.45);
}

.bg-amber-500\/5{
  background-color: rgb(245 158 11 / 0.05);
}

.bg-amber-500\/50{
  background-color: rgb(245 158 11 / 0.5);
}

.bg-amber-500\/55{
  background-color: rgb(245 158 11 / 0.55);
}

.bg-amber-500\/60{
  background-color: rgb(245 158 11 / 0.6);
}

.bg-amber-500\/65{
  background-color: rgb(245 158 11 / 0.65);
}

.bg-amber-500\/70{
  background-color: rgb(245 158 11 / 0.7);
}

.bg-amber-500\/75{
  background-color: rgb(245 158 11 / 0.75);
}

.bg-amber-500\/80{
  background-color: rgb(245 158 11 / 0.8);
}

.bg-amber-500\/85{
  background-color: rgb(245 158 11 / 0.85);
}

.bg-amber-500\/90{
  background-color: rgb(245 158 11 / 0.9);
}

.bg-amber-500\/95{
  background-color: rgb(245 158 11 / 0.95);
}

.bg-amber-600{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
}

.bg-amber-600\/0{
  background-color: rgb(217 119 6 / 0);
}

.bg-amber-600\/10{
  background-color: rgb(217 119 6 / 0.1);
}

.bg-amber-600\/100{
  background-color: rgb(217 119 6 / 1);
}

.bg-amber-600\/15{
  background-color: rgb(217 119 6 / 0.15);
}

.bg-amber-600\/20{
  background-color: rgb(217 119 6 / 0.2);
}

.bg-amber-600\/25{
  background-color: rgb(217 119 6 / 0.25);
}

.bg-amber-600\/30{
  background-color: rgb(217 119 6 / 0.3);
}

.bg-amber-600\/35{
  background-color: rgb(217 119 6 / 0.35);
}

.bg-amber-600\/40{
  background-color: rgb(217 119 6 / 0.4);
}

.bg-amber-600\/45{
  background-color: rgb(217 119 6 / 0.45);
}

.bg-amber-600\/5{
  background-color: rgb(217 119 6 / 0.05);
}

.bg-amber-600\/50{
  background-color: rgb(217 119 6 / 0.5);
}

.bg-amber-600\/55{
  background-color: rgb(217 119 6 / 0.55);
}

.bg-amber-600\/60{
  background-color: rgb(217 119 6 / 0.6);
}

.bg-amber-600\/65{
  background-color: rgb(217 119 6 / 0.65);
}

.bg-amber-600\/70{
  background-color: rgb(217 119 6 / 0.7);
}

.bg-amber-600\/75{
  background-color: rgb(217 119 6 / 0.75);
}

.bg-amber-600\/80{
  background-color: rgb(217 119 6 / 0.8);
}

.bg-amber-600\/85{
  background-color: rgb(217 119 6 / 0.85);
}

.bg-amber-600\/90{
  background-color: rgb(217 119 6 / 0.9);
}

.bg-amber-600\/95{
  background-color: rgb(217 119 6 / 0.95);
}

.bg-amber-700{
  --tw-bg-opacity: 1;
  background-color: rgb(180 83 9 / var(--tw-bg-opacity));
}

.bg-amber-700\/0{
  background-color: rgb(180 83 9 / 0);
}

.bg-amber-700\/10{
  background-color: rgb(180 83 9 / 0.1);
}

.bg-amber-700\/100{
  background-color: rgb(180 83 9 / 1);
}

.bg-amber-700\/15{
  background-color: rgb(180 83 9 / 0.15);
}

.bg-amber-700\/20{
  background-color: rgb(180 83 9 / 0.2);
}

.bg-amber-700\/25{
  background-color: rgb(180 83 9 / 0.25);
}

.bg-amber-700\/30{
  background-color: rgb(180 83 9 / 0.3);
}

.bg-amber-700\/35{
  background-color: rgb(180 83 9 / 0.35);
}

.bg-amber-700\/40{
  background-color: rgb(180 83 9 / 0.4);
}

.bg-amber-700\/45{
  background-color: rgb(180 83 9 / 0.45);
}

.bg-amber-700\/5{
  background-color: rgb(180 83 9 / 0.05);
}

.bg-amber-700\/50{
  background-color: rgb(180 83 9 / 0.5);
}

.bg-amber-700\/55{
  background-color: rgb(180 83 9 / 0.55);
}

.bg-amber-700\/60{
  background-color: rgb(180 83 9 / 0.6);
}

.bg-amber-700\/65{
  background-color: rgb(180 83 9 / 0.65);
}

.bg-amber-700\/70{
  background-color: rgb(180 83 9 / 0.7);
}

.bg-amber-700\/75{
  background-color: rgb(180 83 9 / 0.75);
}

.bg-amber-700\/80{
  background-color: rgb(180 83 9 / 0.8);
}

.bg-amber-700\/85{
  background-color: rgb(180 83 9 / 0.85);
}

.bg-amber-700\/90{
  background-color: rgb(180 83 9 / 0.9);
}

.bg-amber-700\/95{
  background-color: rgb(180 83 9 / 0.95);
}

.bg-amber-800{
  --tw-bg-opacity: 1;
  background-color: rgb(146 64 14 / var(--tw-bg-opacity));
}

.bg-amber-800\/0{
  background-color: rgb(146 64 14 / 0);
}

.bg-amber-800\/10{
  background-color: rgb(146 64 14 / 0.1);
}

.bg-amber-800\/100{
  background-color: rgb(146 64 14 / 1);
}

.bg-amber-800\/15{
  background-color: rgb(146 64 14 / 0.15);
}

.bg-amber-800\/20{
  background-color: rgb(146 64 14 / 0.2);
}

.bg-amber-800\/25{
  background-color: rgb(146 64 14 / 0.25);
}

.bg-amber-800\/30{
  background-color: rgb(146 64 14 / 0.3);
}

.bg-amber-800\/35{
  background-color: rgb(146 64 14 / 0.35);
}

.bg-amber-800\/40{
  background-color: rgb(146 64 14 / 0.4);
}

.bg-amber-800\/45{
  background-color: rgb(146 64 14 / 0.45);
}

.bg-amber-800\/5{
  background-color: rgb(146 64 14 / 0.05);
}

.bg-amber-800\/50{
  background-color: rgb(146 64 14 / 0.5);
}

.bg-amber-800\/55{
  background-color: rgb(146 64 14 / 0.55);
}

.bg-amber-800\/60{
  background-color: rgb(146 64 14 / 0.6);
}

.bg-amber-800\/65{
  background-color: rgb(146 64 14 / 0.65);
}

.bg-amber-800\/70{
  background-color: rgb(146 64 14 / 0.7);
}

.bg-amber-800\/75{
  background-color: rgb(146 64 14 / 0.75);
}

.bg-amber-800\/80{
  background-color: rgb(146 64 14 / 0.8);
}

.bg-amber-800\/85{
  background-color: rgb(146 64 14 / 0.85);
}

.bg-amber-800\/90{
  background-color: rgb(146 64 14 / 0.9);
}

.bg-amber-800\/95{
  background-color: rgb(146 64 14 / 0.95);
}

.bg-amber-900{
  --tw-bg-opacity: 1;
  background-color: rgb(120 53 15 / var(--tw-bg-opacity));
}

.bg-amber-900\/0{
  background-color: rgb(120 53 15 / 0);
}

.bg-amber-900\/10{
  background-color: rgb(120 53 15 / 0.1);
}

.bg-amber-900\/100{
  background-color: rgb(120 53 15 / 1);
}

.bg-amber-900\/15{
  background-color: rgb(120 53 15 / 0.15);
}

.bg-amber-900\/20{
  background-color: rgb(120 53 15 / 0.2);
}

.bg-amber-900\/25{
  background-color: rgb(120 53 15 / 0.25);
}

.bg-amber-900\/30{
  background-color: rgb(120 53 15 / 0.3);
}

.bg-amber-900\/35{
  background-color: rgb(120 53 15 / 0.35);
}

.bg-amber-900\/40{
  background-color: rgb(120 53 15 / 0.4);
}

.bg-amber-900\/45{
  background-color: rgb(120 53 15 / 0.45);
}

.bg-amber-900\/5{
  background-color: rgb(120 53 15 / 0.05);
}

.bg-amber-900\/50{
  background-color: rgb(120 53 15 / 0.5);
}

.bg-amber-900\/55{
  background-color: rgb(120 53 15 / 0.55);
}

.bg-amber-900\/60{
  background-color: rgb(120 53 15 / 0.6);
}

.bg-amber-900\/65{
  background-color: rgb(120 53 15 / 0.65);
}

.bg-amber-900\/70{
  background-color: rgb(120 53 15 / 0.7);
}

.bg-amber-900\/75{
  background-color: rgb(120 53 15 / 0.75);
}

.bg-amber-900\/80{
  background-color: rgb(120 53 15 / 0.8);
}

.bg-amber-900\/85{
  background-color: rgb(120 53 15 / 0.85);
}

.bg-amber-900\/90{
  background-color: rgb(120 53 15 / 0.9);
}

.bg-amber-900\/95{
  background-color: rgb(120 53 15 / 0.95);
}

.bg-amber-950{
  --tw-bg-opacity: 1;
  background-color: rgb(69 26 3 / var(--tw-bg-opacity));
}

.bg-amber-950\/0{
  background-color: rgb(69 26 3 / 0);
}

.bg-amber-950\/10{
  background-color: rgb(69 26 3 / 0.1);
}

.bg-amber-950\/100{
  background-color: rgb(69 26 3 / 1);
}

.bg-amber-950\/15{
  background-color: rgb(69 26 3 / 0.15);
}

.bg-amber-950\/20{
  background-color: rgb(69 26 3 / 0.2);
}

.bg-amber-950\/25{
  background-color: rgb(69 26 3 / 0.25);
}

.bg-amber-950\/30{
  background-color: rgb(69 26 3 / 0.3);
}

.bg-amber-950\/35{
  background-color: rgb(69 26 3 / 0.35);
}

.bg-amber-950\/40{
  background-color: rgb(69 26 3 / 0.4);
}

.bg-amber-950\/45{
  background-color: rgb(69 26 3 / 0.45);
}

.bg-amber-950\/5{
  background-color: rgb(69 26 3 / 0.05);
}

.bg-amber-950\/50{
  background-color: rgb(69 26 3 / 0.5);
}

.bg-amber-950\/55{
  background-color: rgb(69 26 3 / 0.55);
}

.bg-amber-950\/60{
  background-color: rgb(69 26 3 / 0.6);
}

.bg-amber-950\/65{
  background-color: rgb(69 26 3 / 0.65);
}

.bg-amber-950\/70{
  background-color: rgb(69 26 3 / 0.7);
}

.bg-amber-950\/75{
  background-color: rgb(69 26 3 / 0.75);
}

.bg-amber-950\/80{
  background-color: rgb(69 26 3 / 0.8);
}

.bg-amber-950\/85{
  background-color: rgb(69 26 3 / 0.85);
}

.bg-amber-950\/90{
  background-color: rgb(69 26 3 / 0.9);
}

.bg-amber-950\/95{
  background-color: rgb(69 26 3 / 0.95);
}

.bg-amber-glow{
  background-color: var(--amber-glow);
}

.bg-background{
  background-color: var(--background);
}

.bg-black\/50{
  background-color: rgb(0 0 0 / 0.5);
}

.bg-border{
  background-color: var(--border);
}

.bg-card{
  background-color: var(--card);
}

.bg-current{
  background-color: currentColor;
}

.bg-destructive{
  background-color: var(--destructive);
}

.bg-destructive-foreground{
  background-color: var(--destructive-foreground);
}

.bg-ember{
  background-color: var(--primary);
}

.bg-emerald-100{
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity));
}

.bg-emerald-500\/15{
  background-color: rgb(16 185 129 / 0.15);
}

.bg-emerald-700{
  --tw-bg-opacity: 1;
  background-color: rgb(4 120 87 / var(--tw-bg-opacity));
}

.bg-emerald-800{
  --tw-bg-opacity: 1;
  background-color: rgb(6 95 70 / var(--tw-bg-opacity));
}

.bg-foreground{
  background-color: var(--foreground);
}

.bg-green-50{
  --tw-bg-opacity: 1;
  background-color: rgb(240 253 244 / var(--tw-bg-opacity));
}

.bg-muted{
  background-color: var(--muted);
}

.bg-muted-foreground{
  background-color: var(--muted-foreground);
}

.bg-neutral-100{
  --tw-bg-opacity: 1;
  background-color: rgb(245 245 245 / var(--tw-bg-opacity));
}

.bg-neutral-200{
  --tw-bg-opacity: 1;
  background-color: rgb(229 229 229 / var(--tw-bg-opacity));
}

.bg-primary{
  background-color: var(--primary);
}

.bg-primary-foreground{
  background-color: var(--primary-foreground);
}

.bg-primary-glow{
  background-color: var(--primary-glow);
}

.bg-red-50{
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity));
}

.bg-secondary{
  background-color: var(--secondary);
}

.bg-sky-100{
  --tw-bg-opacity: 1;
  background-color: rgb(224 242 254 / var(--tw-bg-opacity));
}

.bg-sky-50{
  --tw-bg-opacity: 1;
  background-color: rgb(240 249 255 / var(--tw-bg-opacity));
}

.bg-surface{
  background-color: var(--surface);
}

.bg-surface-2{
  background-color: var(--surface-2);
}

.bg-transparent{
  background-color: transparent;
}

.bg-violet-100{
  --tw-bg-opacity: 1;
  background-color: rgb(237 233 254 / var(--tw-bg-opacity));
}

.bg-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.bg-white\/10{
  background-color: rgb(255 255 255 / 0.1);
}

.bg-white\/15{
  background-color: rgb(255 255 255 / 0.15);
}

.bg-white\/25{
  background-color: rgb(255 255 255 / 0.25);
}

.bg-gradient-to-b{
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}

.bg-gradient-to-br{
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}

.bg-gradient-to-t{
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}

.from-background{
  --tw-gradient-from: var(--background) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black\/60{
  --tw-gradient-from: rgb(0 0 0 / 0.6) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary{
  --tw-gradient-from: var(--primary) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.via-card{
  --tw-gradient-to: rgb(255 255 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--card) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.to-background{
  --tw-gradient-to: var(--background) var(--tw-gradient-to-position);
}

.to-card{
  --tw-gradient-to: var(--card) var(--tw-gradient-to-position);
}

.to-transparent{
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}

.fill-current{
  fill: currentColor;
}

.object-contain{
  -o-object-fit: contain;
     object-fit: contain;
}

.object-cover{
  -o-object-fit: cover;
     object-fit: cover;
}

.p-0{
  padding: 0px;
}

.p-1{
  padding: 0.25rem;
}

.p-10{
  padding: 2.5rem;
}

.p-2{
  padding: 0.5rem;
}

.p-3{
  padding: 0.75rem;
}

.p-4{
  padding: 1rem;
}

.p-5{
  padding: 1.25rem;
}

.p-6{
  padding: 1.5rem;
}

.p-8{
  padding: 2rem;
}

.px-0{
  padding-left: 0px;
  padding-right: 0px;
}

.px-2{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-2\.5{
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}

.px-3{
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4{
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5{
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6{
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.px-7{
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}

.px-8{
  padding-left: 2rem;
  padding-right: 2rem;
}

.py-0\.5{
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.py-1{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.py-1\.5{
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

.py-10{
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

.py-12{
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-16{
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.py-2{
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-2\.5{
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.py-20{
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.py-3{
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-3\.5{
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}

.py-4{
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-5{
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.py-6{
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8{
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.pb-0{
  padding-bottom: 0px;
}

.pb-12{
  padding-bottom: 3rem;
}

.pb-16{
  padding-bottom: 4rem;
}

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

.pb-20{
  padding-bottom: 5rem;
}

.pb-24{
  padding-bottom: 6rem;
}

.pb-3{
  padding-bottom: 0.75rem;
}

.pb-5{
  padding-bottom: 1.25rem;
}

.pb-6{
  padding-bottom: 1.5rem;
}

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

.pl-12{
  padding-left: 3rem;
}

.ps-0{
  padding-inline-start: 0px;
}

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

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

.pt-10{
  padding-top: 2.5rem;
}

.pt-12{
  padding-top: 3rem;
}

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

.pt-3{
  padding-top: 0.75rem;
}

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

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

.pt-6{
  padding-top: 1.5rem;
}

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

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

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

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

.font-display{
  font-family: var(--font-display);
}

.font-mono{
  font-family: var(--font-mono);
}

.font-serif{
  font-family: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
}

.text-2xl{
  font-size: 1.5rem;
  line-height: 2rem;
}

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

.text-4xl{
  font-size: 2.25rem;
  line-height: 2.5rem;
}

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

.text-6xl{
  font-size: 3.75rem;
  line-height: 1;
}

.text-\[10px\]{
  font-size: 10px;
}

.text-\[11px\]{
  font-size: 11px;
}

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

.text-lg{
  font-size: 1.125rem;
  line-height: 1.75rem;
}

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

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

.text-xs{
  font-size: 0.75rem;
  line-height: 1rem;
}

.font-bold{
  font-weight: 700;
}

.font-extrabold{
  font-weight: 800;
}

.font-medium{
  font-weight: 500;
}

.font-normal{
  font-weight: 400;
}

.font-semibold{
  font-weight: 600;
}

.uppercase{
  text-transform: uppercase;
}

.capitalize{
  text-transform: capitalize;
}

.italic{
  font-style: italic;
}

.leading-\[1\.1\]{
  line-height: 1.1;
}

.leading-none{
  line-height: 1;
}

.leading-relaxed{
  line-height: 1.625;
}

.leading-snug{
  line-height: 1.375;
}

.leading-tight{
  line-height: 1.25;
}

.tracking-\[0\.25em\]{
  letter-spacing: 0.25em;
}

.tracking-\[0\.2em\]{
  letter-spacing: 0.2em;
}

.tracking-tight{
  letter-spacing: -0.025em;
}

.tracking-wide{
  letter-spacing: 0.025em;
}

.tracking-wider{
  letter-spacing: 0.05em;
}

.tracking-widest{
  letter-spacing: 0.1em;
}

.text-\[color\:var\(--primary\)\]{
  color: var(--primary);
}

.text-accent{
  color: var(--accent);
}

.text-accent-foreground{
  color: var(--accent-foreground);
}

.text-amber-100{
  --tw-text-opacity: 1;
  color: rgb(254 243 199 / var(--tw-text-opacity));
}

.text-amber-100\/0{
  color: rgb(254 243 199 / 0);
}

.text-amber-100\/10{
  color: rgb(254 243 199 / 0.1);
}

.text-amber-100\/100{
  color: rgb(254 243 199 / 1);
}

.text-amber-100\/15{
  color: rgb(254 243 199 / 0.15);
}

.text-amber-100\/20{
  color: rgb(254 243 199 / 0.2);
}

.text-amber-100\/25{
  color: rgb(254 243 199 / 0.25);
}

.text-amber-100\/30{
  color: rgb(254 243 199 / 0.3);
}

.text-amber-100\/35{
  color: rgb(254 243 199 / 0.35);
}

.text-amber-100\/40{
  color: rgb(254 243 199 / 0.4);
}

.text-amber-100\/45{
  color: rgb(254 243 199 / 0.45);
}

.text-amber-100\/5{
  color: rgb(254 243 199 / 0.05);
}

.text-amber-100\/50{
  color: rgb(254 243 199 / 0.5);
}

.text-amber-100\/55{
  color: rgb(254 243 199 / 0.55);
}

.text-amber-100\/60{
  color: rgb(254 243 199 / 0.6);
}

.text-amber-100\/65{
  color: rgb(254 243 199 / 0.65);
}

.text-amber-100\/70{
  color: rgb(254 243 199 / 0.7);
}

.text-amber-100\/75{
  color: rgb(254 243 199 / 0.75);
}

.text-amber-100\/80{
  color: rgb(254 243 199 / 0.8);
}

.text-amber-100\/85{
  color: rgb(254 243 199 / 0.85);
}

.text-amber-100\/90{
  color: rgb(254 243 199 / 0.9);
}

.text-amber-100\/95{
  color: rgb(254 243 199 / 0.95);
}

.text-amber-200{
  --tw-text-opacity: 1;
  color: rgb(253 230 138 / var(--tw-text-opacity));
}

.text-amber-200\/0{
  color: rgb(253 230 138 / 0);
}

.text-amber-200\/10{
  color: rgb(253 230 138 / 0.1);
}

.text-amber-200\/100{
  color: rgb(253 230 138 / 1);
}

.text-amber-200\/15{
  color: rgb(253 230 138 / 0.15);
}

.text-amber-200\/20{
  color: rgb(253 230 138 / 0.2);
}

.text-amber-200\/25{
  color: rgb(253 230 138 / 0.25);
}

.text-amber-200\/30{
  color: rgb(253 230 138 / 0.3);
}

.text-amber-200\/35{
  color: rgb(253 230 138 / 0.35);
}

.text-amber-200\/40{
  color: rgb(253 230 138 / 0.4);
}

.text-amber-200\/45{
  color: rgb(253 230 138 / 0.45);
}

.text-amber-200\/5{
  color: rgb(253 230 138 / 0.05);
}

.text-amber-200\/50{
  color: rgb(253 230 138 / 0.5);
}

.text-amber-200\/55{
  color: rgb(253 230 138 / 0.55);
}

.text-amber-200\/60{
  color: rgb(253 230 138 / 0.6);
}

.text-amber-200\/65{
  color: rgb(253 230 138 / 0.65);
}

.text-amber-200\/70{
  color: rgb(253 230 138 / 0.7);
}

.text-amber-200\/75{
  color: rgb(253 230 138 / 0.75);
}

.text-amber-200\/80{
  color: rgb(253 230 138 / 0.8);
}

.text-amber-200\/85{
  color: rgb(253 230 138 / 0.85);
}

.text-amber-200\/90{
  color: rgb(253 230 138 / 0.9);
}

.text-amber-200\/95{
  color: rgb(253 230 138 / 0.95);
}

.text-amber-300{
  --tw-text-opacity: 1;
  color: rgb(252 211 77 / var(--tw-text-opacity));
}

.text-amber-300\/0{
  color: rgb(252 211 77 / 0);
}

.text-amber-300\/10{
  color: rgb(252 211 77 / 0.1);
}

.text-amber-300\/100{
  color: rgb(252 211 77 / 1);
}

.text-amber-300\/15{
  color: rgb(252 211 77 / 0.15);
}

.text-amber-300\/20{
  color: rgb(252 211 77 / 0.2);
}

.text-amber-300\/25{
  color: rgb(252 211 77 / 0.25);
}

.text-amber-300\/30{
  color: rgb(252 211 77 / 0.3);
}

.text-amber-300\/35{
  color: rgb(252 211 77 / 0.35);
}

.text-amber-300\/40{
  color: rgb(252 211 77 / 0.4);
}

.text-amber-300\/45{
  color: rgb(252 211 77 / 0.45);
}

.text-amber-300\/5{
  color: rgb(252 211 77 / 0.05);
}

.text-amber-300\/50{
  color: rgb(252 211 77 / 0.5);
}

.text-amber-300\/55{
  color: rgb(252 211 77 / 0.55);
}

.text-amber-300\/60{
  color: rgb(252 211 77 / 0.6);
}

.text-amber-300\/65{
  color: rgb(252 211 77 / 0.65);
}

.text-amber-300\/70{
  color: rgb(252 211 77 / 0.7);
}

.text-amber-300\/75{
  color: rgb(252 211 77 / 0.75);
}

.text-amber-300\/80{
  color: rgb(252 211 77 / 0.8);
}

.text-amber-300\/85{
  color: rgb(252 211 77 / 0.85);
}

.text-amber-300\/90{
  color: rgb(252 211 77 / 0.9);
}

.text-amber-300\/95{
  color: rgb(252 211 77 / 0.95);
}

.text-amber-400{
  --tw-text-opacity: 1;
  color: rgb(251 191 36 / var(--tw-text-opacity));
}

.text-amber-400\/0{
  color: rgb(251 191 36 / 0);
}

.text-amber-400\/10{
  color: rgb(251 191 36 / 0.1);
}

.text-amber-400\/100{
  color: rgb(251 191 36 / 1);
}

.text-amber-400\/15{
  color: rgb(251 191 36 / 0.15);
}

.text-amber-400\/20{
  color: rgb(251 191 36 / 0.2);
}

.text-amber-400\/25{
  color: rgb(251 191 36 / 0.25);
}

.text-amber-400\/30{
  color: rgb(251 191 36 / 0.3);
}

.text-amber-400\/35{
  color: rgb(251 191 36 / 0.35);
}

.text-amber-400\/40{
  color: rgb(251 191 36 / 0.4);
}

.text-amber-400\/45{
  color: rgb(251 191 36 / 0.45);
}

.text-amber-400\/5{
  color: rgb(251 191 36 / 0.05);
}

.text-amber-400\/50{
  color: rgb(251 191 36 / 0.5);
}

.text-amber-400\/55{
  color: rgb(251 191 36 / 0.55);
}

.text-amber-400\/60{
  color: rgb(251 191 36 / 0.6);
}

.text-amber-400\/65{
  color: rgb(251 191 36 / 0.65);
}

.text-amber-400\/70{
  color: rgb(251 191 36 / 0.7);
}

.text-amber-400\/75{
  color: rgb(251 191 36 / 0.75);
}

.text-amber-400\/80{
  color: rgb(251 191 36 / 0.8);
}

.text-amber-400\/85{
  color: rgb(251 191 36 / 0.85);
}

.text-amber-400\/90{
  color: rgb(251 191 36 / 0.9);
}

.text-amber-400\/95{
  color: rgb(251 191 36 / 0.95);
}

.text-amber-50{
  --tw-text-opacity: 1;
  color: rgb(255 251 235 / var(--tw-text-opacity));
}

.text-amber-50\/0{
  color: rgb(255 251 235 / 0);
}

.text-amber-50\/10{
  color: rgb(255 251 235 / 0.1);
}

.text-amber-50\/100{
  color: rgb(255 251 235 / 1);
}

.text-amber-50\/15{
  color: rgb(255 251 235 / 0.15);
}

.text-amber-50\/20{
  color: rgb(255 251 235 / 0.2);
}

.text-amber-50\/25{
  color: rgb(255 251 235 / 0.25);
}

.text-amber-50\/30{
  color: rgb(255 251 235 / 0.3);
}

.text-amber-50\/35{
  color: rgb(255 251 235 / 0.35);
}

.text-amber-50\/40{
  color: rgb(255 251 235 / 0.4);
}

.text-amber-50\/45{
  color: rgb(255 251 235 / 0.45);
}

.text-amber-50\/5{
  color: rgb(255 251 235 / 0.05);
}

.text-amber-50\/50{
  color: rgb(255 251 235 / 0.5);
}

.text-amber-50\/55{
  color: rgb(255 251 235 / 0.55);
}

.text-amber-50\/60{
  color: rgb(255 251 235 / 0.6);
}

.text-amber-50\/65{
  color: rgb(255 251 235 / 0.65);
}

.text-amber-50\/70{
  color: rgb(255 251 235 / 0.7);
}

.text-amber-50\/75{
  color: rgb(255 251 235 / 0.75);
}

.text-amber-50\/80{
  color: rgb(255 251 235 / 0.8);
}

.text-amber-50\/85{
  color: rgb(255 251 235 / 0.85);
}

.text-amber-50\/90{
  color: rgb(255 251 235 / 0.9);
}

.text-amber-50\/95{
  color: rgb(255 251 235 / 0.95);
}

.text-amber-500{
  --tw-text-opacity: 1;
  color: rgb(245 158 11 / var(--tw-text-opacity));
}

.text-amber-500\/0{
  color: rgb(245 158 11 / 0);
}

.text-amber-500\/10{
  color: rgb(245 158 11 / 0.1);
}

.text-amber-500\/100{
  color: rgb(245 158 11 / 1);
}

.text-amber-500\/15{
  color: rgb(245 158 11 / 0.15);
}

.text-amber-500\/20{
  color: rgb(245 158 11 / 0.2);
}

.text-amber-500\/25{
  color: rgb(245 158 11 / 0.25);
}

.text-amber-500\/30{
  color: rgb(245 158 11 / 0.3);
}

.text-amber-500\/35{
  color: rgb(245 158 11 / 0.35);
}

.text-amber-500\/40{
  color: rgb(245 158 11 / 0.4);
}

.text-amber-500\/45{
  color: rgb(245 158 11 / 0.45);
}

.text-amber-500\/5{
  color: rgb(245 158 11 / 0.05);
}

.text-amber-500\/50{
  color: rgb(245 158 11 / 0.5);
}

.text-amber-500\/55{
  color: rgb(245 158 11 / 0.55);
}

.text-amber-500\/60{
  color: rgb(245 158 11 / 0.6);
}

.text-amber-500\/65{
  color: rgb(245 158 11 / 0.65);
}

.text-amber-500\/70{
  color: rgb(245 158 11 / 0.7);
}

.text-amber-500\/75{
  color: rgb(245 158 11 / 0.75);
}

.text-amber-500\/80{
  color: rgb(245 158 11 / 0.8);
}

.text-amber-500\/85{
  color: rgb(245 158 11 / 0.85);
}

.text-amber-500\/90{
  color: rgb(245 158 11 / 0.9);
}

.text-amber-500\/95{
  color: rgb(245 158 11 / 0.95);
}

.text-amber-600{
  --tw-text-opacity: 1;
  color: rgb(217 119 6 / var(--tw-text-opacity));
}

.text-amber-600\/0{
  color: rgb(217 119 6 / 0);
}

.text-amber-600\/10{
  color: rgb(217 119 6 / 0.1);
}

.text-amber-600\/100{
  color: rgb(217 119 6 / 1);
}

.text-amber-600\/15{
  color: rgb(217 119 6 / 0.15);
}

.text-amber-600\/20{
  color: rgb(217 119 6 / 0.2);
}

.text-amber-600\/25{
  color: rgb(217 119 6 / 0.25);
}

.text-amber-600\/30{
  color: rgb(217 119 6 / 0.3);
}

.text-amber-600\/35{
  color: rgb(217 119 6 / 0.35);
}

.text-amber-600\/40{
  color: rgb(217 119 6 / 0.4);
}

.text-amber-600\/45{
  color: rgb(217 119 6 / 0.45);
}

.text-amber-600\/5{
  color: rgb(217 119 6 / 0.05);
}

.text-amber-600\/50{
  color: rgb(217 119 6 / 0.5);
}

.text-amber-600\/55{
  color: rgb(217 119 6 / 0.55);
}

.text-amber-600\/60{
  color: rgb(217 119 6 / 0.6);
}

.text-amber-600\/65{
  color: rgb(217 119 6 / 0.65);
}

.text-amber-600\/70{
  color: rgb(217 119 6 / 0.7);
}

.text-amber-600\/75{
  color: rgb(217 119 6 / 0.75);
}

.text-amber-600\/80{
  color: rgb(217 119 6 / 0.8);
}

.text-amber-600\/85{
  color: rgb(217 119 6 / 0.85);
}

.text-amber-600\/90{
  color: rgb(217 119 6 / 0.9);
}

.text-amber-600\/95{
  color: rgb(217 119 6 / 0.95);
}

.text-amber-700{
  --tw-text-opacity: 1;
  color: rgb(180 83 9 / var(--tw-text-opacity));
}

.text-amber-700\/0{
  color: rgb(180 83 9 / 0);
}

.text-amber-700\/10{
  color: rgb(180 83 9 / 0.1);
}

.text-amber-700\/100{
  color: rgb(180 83 9 / 1);
}

.text-amber-700\/15{
  color: rgb(180 83 9 / 0.15);
}

.text-amber-700\/20{
  color: rgb(180 83 9 / 0.2);
}

.text-amber-700\/25{
  color: rgb(180 83 9 / 0.25);
}

.text-amber-700\/30{
  color: rgb(180 83 9 / 0.3);
}

.text-amber-700\/35{
  color: rgb(180 83 9 / 0.35);
}

.text-amber-700\/40{
  color: rgb(180 83 9 / 0.4);
}

.text-amber-700\/45{
  color: rgb(180 83 9 / 0.45);
}

.text-amber-700\/5{
  color: rgb(180 83 9 / 0.05);
}

.text-amber-700\/50{
  color: rgb(180 83 9 / 0.5);
}

.text-amber-700\/55{
  color: rgb(180 83 9 / 0.55);
}

.text-amber-700\/60{
  color: rgb(180 83 9 / 0.6);
}

.text-amber-700\/65{
  color: rgb(180 83 9 / 0.65);
}

.text-amber-700\/70{
  color: rgb(180 83 9 / 0.7);
}

.text-amber-700\/75{
  color: rgb(180 83 9 / 0.75);
}

.text-amber-700\/80{
  color: rgb(180 83 9 / 0.8);
}

.text-amber-700\/85{
  color: rgb(180 83 9 / 0.85);
}

.text-amber-700\/90{
  color: rgb(180 83 9 / 0.9);
}

.text-amber-700\/95{
  color: rgb(180 83 9 / 0.95);
}

.text-amber-800{
  --tw-text-opacity: 1;
  color: rgb(146 64 14 / var(--tw-text-opacity));
}

.text-amber-800\/0{
  color: rgb(146 64 14 / 0);
}

.text-amber-800\/10{
  color: rgb(146 64 14 / 0.1);
}

.text-amber-800\/100{
  color: rgb(146 64 14 / 1);
}

.text-amber-800\/15{
  color: rgb(146 64 14 / 0.15);
}

.text-amber-800\/20{
  color: rgb(146 64 14 / 0.2);
}

.text-amber-800\/25{
  color: rgb(146 64 14 / 0.25);
}

.text-amber-800\/30{
  color: rgb(146 64 14 / 0.3);
}

.text-amber-800\/35{
  color: rgb(146 64 14 / 0.35);
}

.text-amber-800\/40{
  color: rgb(146 64 14 / 0.4);
}

.text-amber-800\/45{
  color: rgb(146 64 14 / 0.45);
}

.text-amber-800\/5{
  color: rgb(146 64 14 / 0.05);
}

.text-amber-800\/50{
  color: rgb(146 64 14 / 0.5);
}

.text-amber-800\/55{
  color: rgb(146 64 14 / 0.55);
}

.text-amber-800\/60{
  color: rgb(146 64 14 / 0.6);
}

.text-amber-800\/65{
  color: rgb(146 64 14 / 0.65);
}

.text-amber-800\/70{
  color: rgb(146 64 14 / 0.7);
}

.text-amber-800\/75{
  color: rgb(146 64 14 / 0.75);
}

.text-amber-800\/80{
  color: rgb(146 64 14 / 0.8);
}

.text-amber-800\/85{
  color: rgb(146 64 14 / 0.85);
}

.text-amber-800\/90{
  color: rgb(146 64 14 / 0.9);
}

.text-amber-800\/95{
  color: rgb(146 64 14 / 0.95);
}

.text-amber-900{
  --tw-text-opacity: 1;
  color: rgb(120 53 15 / var(--tw-text-opacity));
}

.text-amber-900\/0{
  color: rgb(120 53 15 / 0);
}

.text-amber-900\/10{
  color: rgb(120 53 15 / 0.1);
}

.text-amber-900\/100{
  color: rgb(120 53 15 / 1);
}

.text-amber-900\/15{
  color: rgb(120 53 15 / 0.15);
}

.text-amber-900\/20{
  color: rgb(120 53 15 / 0.2);
}

.text-amber-900\/25{
  color: rgb(120 53 15 / 0.25);
}

.text-amber-900\/30{
  color: rgb(120 53 15 / 0.3);
}

.text-amber-900\/35{
  color: rgb(120 53 15 / 0.35);
}

.text-amber-900\/40{
  color: rgb(120 53 15 / 0.4);
}

.text-amber-900\/45{
  color: rgb(120 53 15 / 0.45);
}

.text-amber-900\/5{
  color: rgb(120 53 15 / 0.05);
}

.text-amber-900\/50{
  color: rgb(120 53 15 / 0.5);
}

.text-amber-900\/55{
  color: rgb(120 53 15 / 0.55);
}

.text-amber-900\/60{
  color: rgb(120 53 15 / 0.6);
}

.text-amber-900\/65{
  color: rgb(120 53 15 / 0.65);
}

.text-amber-900\/70{
  color: rgb(120 53 15 / 0.7);
}

.text-amber-900\/75{
  color: rgb(120 53 15 / 0.75);
}

.text-amber-900\/80{
  color: rgb(120 53 15 / 0.8);
}

.text-amber-900\/85{
  color: rgb(120 53 15 / 0.85);
}

.text-amber-900\/90{
  color: rgb(120 53 15 / 0.9);
}

.text-amber-900\/95{
  color: rgb(120 53 15 / 0.95);
}

.text-amber-950{
  --tw-text-opacity: 1;
  color: rgb(69 26 3 / var(--tw-text-opacity));
}

.text-amber-950\/0{
  color: rgb(69 26 3 / 0);
}

.text-amber-950\/10{
  color: rgb(69 26 3 / 0.1);
}

.text-amber-950\/100{
  color: rgb(69 26 3 / 1);
}

.text-amber-950\/15{
  color: rgb(69 26 3 / 0.15);
}

.text-amber-950\/20{
  color: rgb(69 26 3 / 0.2);
}

.text-amber-950\/25{
  color: rgb(69 26 3 / 0.25);
}

.text-amber-950\/30{
  color: rgb(69 26 3 / 0.3);
}

.text-amber-950\/35{
  color: rgb(69 26 3 / 0.35);
}

.text-amber-950\/40{
  color: rgb(69 26 3 / 0.4);
}

.text-amber-950\/45{
  color: rgb(69 26 3 / 0.45);
}

.text-amber-950\/5{
  color: rgb(69 26 3 / 0.05);
}

.text-amber-950\/50{
  color: rgb(69 26 3 / 0.5);
}

.text-amber-950\/55{
  color: rgb(69 26 3 / 0.55);
}

.text-amber-950\/60{
  color: rgb(69 26 3 / 0.6);
}

.text-amber-950\/65{
  color: rgb(69 26 3 / 0.65);
}

.text-amber-950\/70{
  color: rgb(69 26 3 / 0.7);
}

.text-amber-950\/75{
  color: rgb(69 26 3 / 0.75);
}

.text-amber-950\/80{
  color: rgb(69 26 3 / 0.8);
}

.text-amber-950\/85{
  color: rgb(69 26 3 / 0.85);
}

.text-amber-950\/90{
  color: rgb(69 26 3 / 0.9);
}

.text-amber-950\/95{
  color: rgb(69 26 3 / 0.95);
}

.text-amber-glow{
  color: var(--amber-glow);
}

.text-background{
  color: var(--background);
}

.text-black{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity));
}

.text-destructive{
  color: var(--destructive);
}

.text-destructive-foreground{
  color: var(--destructive-foreground);
}

.text-ember{
  color: var(--primary);
}

.text-emerald-300{
  --tw-text-opacity: 1;
  color: rgb(110 231 183 / var(--tw-text-opacity));
}

.text-emerald-700{
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity));
}

.text-foreground{
  color: var(--foreground);
}

.text-gray-500{
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity));
}

.text-gray-600{
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity));
}

.text-green-600{
  --tw-text-opacity: 1;
  color: rgb(22 163 74 / var(--tw-text-opacity));
}

.text-green-700{
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity));
}

.text-green-800{
  --tw-text-opacity: 1;
  color: rgb(22 101 52 / var(--tw-text-opacity));
}

.text-green-900{
  --tw-text-opacity: 1;
  color: rgb(20 83 45 / var(--tw-text-opacity));
}

.text-muted{
  color: var(--muted);
}

.text-muted-foreground{
  color: var(--muted-foreground);
}

.text-neutral-400{
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity));
}

.text-neutral-500{
  --tw-text-opacity: 1;
  color: rgb(115 115 115 / var(--tw-text-opacity));
}

.text-neutral-600{
  --tw-text-opacity: 1;
  color: rgb(82 82 82 / var(--tw-text-opacity));
}

.text-primary{
  color: var(--primary);
}

.text-primary-foreground{
  color: var(--primary-foreground);
}

.text-primary-glow{
  color: var(--primary-glow);
}

.text-red-600{
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity));
}

.text-red-700{
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity));
}

.text-red-800{
  --tw-text-opacity: 1;
  color: rgb(153 27 27 / var(--tw-text-opacity));
}

.text-secondary-foreground{
  color: var(--secondary-foreground);
}

.text-sky-700{
  --tw-text-opacity: 1;
  color: rgb(3 105 161 / var(--tw-text-opacity));
}

.text-sky-800{
  --tw-text-opacity: 1;
  color: rgb(7 89 133 / var(--tw-text-opacity));
}

.text-surface{
  color: var(--surface);
}

.text-surface-2{
  color: var(--surface-2);
}

.text-violet-700{
  --tw-text-opacity: 1;
  color: rgb(109 40 217 / var(--tw-text-opacity));
}

.text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.text-white\/60{
  color: rgb(255 255 255 / 0.6);
}

.text-white\/70{
  color: rgb(255 255 255 / 0.7);
}

.text-white\/80{
  color: rgb(255 255 255 / 0.8);
}

.underline{
  text-decoration-line: underline;
}

.antialiased{
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.accent-\[color\:var\(--primary\)\]{
  accent-color: var(--primary);
}

.opacity-0{
  opacity: 0;
}

.opacity-10{
  opacity: 0.1;
}

.opacity-100{
  opacity: 1;
}

.opacity-20{
  opacity: 0.2;
}

.opacity-25{
  opacity: 0.25;
}

.opacity-40{
  opacity: 0.4;
}

.opacity-50{
  opacity: 0.5;
}

.opacity-70{
  opacity: 0.7;
}

.opacity-75{
  opacity: 0.75;
}

.opacity-80{
  opacity: 0.8;
}

.opacity-\[0\.05\]{
  opacity: 0.05;
}

.opacity-\[0\.07\]{
  opacity: 0.07;
}

.mix-blend-overlay{
  mix-blend-mode: overlay;
}

.shadow{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-2xl{
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-ember{
  --tw-shadow: var(--shadow-ember);
  --tw-shadow-colored: var(--shadow-ember);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-ember-sm{
  --tw-shadow: var(--shadow-ember-sm);
  --tw-shadow-colored: var(--shadow-ember-sm);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-lg{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-md{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-panel{
  --tw-shadow: var(--shadow-panel);
  --tw-shadow-colored: var(--shadow-panel);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-sm{
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-ember{
  --tw-shadow-color: var(--primary);
  --tw-shadow: var(--tw-shadow-colored);
}

.outline{
  outline-style: solid;
}

.ring{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-2{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-4{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-accent{
  --tw-ring-color: var(--accent);
}

.ring-accent-foreground{
  --tw-ring-color: var(--accent-foreground);
}

.ring-amber-100{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(254 243 199 / var(--tw-ring-opacity));
}

.ring-amber-100\/0{
  --tw-ring-color: rgb(254 243 199 / 0);
}

.ring-amber-100\/10{
  --tw-ring-color: rgb(254 243 199 / 0.1);
}

.ring-amber-100\/100{
  --tw-ring-color: rgb(254 243 199 / 1);
}

.ring-amber-100\/15{
  --tw-ring-color: rgb(254 243 199 / 0.15);
}

.ring-amber-100\/20{
  --tw-ring-color: rgb(254 243 199 / 0.2);
}

.ring-amber-100\/25{
  --tw-ring-color: rgb(254 243 199 / 0.25);
}

.ring-amber-100\/30{
  --tw-ring-color: rgb(254 243 199 / 0.3);
}

.ring-amber-100\/35{
  --tw-ring-color: rgb(254 243 199 / 0.35);
}

.ring-amber-100\/40{
  --tw-ring-color: rgb(254 243 199 / 0.4);
}

.ring-amber-100\/45{
  --tw-ring-color: rgb(254 243 199 / 0.45);
}

.ring-amber-100\/5{
  --tw-ring-color: rgb(254 243 199 / 0.05);
}

.ring-amber-100\/50{
  --tw-ring-color: rgb(254 243 199 / 0.5);
}

.ring-amber-100\/55{
  --tw-ring-color: rgb(254 243 199 / 0.55);
}

.ring-amber-100\/60{
  --tw-ring-color: rgb(254 243 199 / 0.6);
}

.ring-amber-100\/65{
  --tw-ring-color: rgb(254 243 199 / 0.65);
}

.ring-amber-100\/70{
  --tw-ring-color: rgb(254 243 199 / 0.7);
}

.ring-amber-100\/75{
  --tw-ring-color: rgb(254 243 199 / 0.75);
}

.ring-amber-100\/80{
  --tw-ring-color: rgb(254 243 199 / 0.8);
}

.ring-amber-100\/85{
  --tw-ring-color: rgb(254 243 199 / 0.85);
}

.ring-amber-100\/90{
  --tw-ring-color: rgb(254 243 199 / 0.9);
}

.ring-amber-100\/95{
  --tw-ring-color: rgb(254 243 199 / 0.95);
}

.ring-amber-200{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(253 230 138 / var(--tw-ring-opacity));
}

.ring-amber-200\/0{
  --tw-ring-color: rgb(253 230 138 / 0);
}

.ring-amber-200\/10{
  --tw-ring-color: rgb(253 230 138 / 0.1);
}

.ring-amber-200\/100{
  --tw-ring-color: rgb(253 230 138 / 1);
}

.ring-amber-200\/15{
  --tw-ring-color: rgb(253 230 138 / 0.15);
}

.ring-amber-200\/20{
  --tw-ring-color: rgb(253 230 138 / 0.2);
}

.ring-amber-200\/25{
  --tw-ring-color: rgb(253 230 138 / 0.25);
}

.ring-amber-200\/30{
  --tw-ring-color: rgb(253 230 138 / 0.3);
}

.ring-amber-200\/35{
  --tw-ring-color: rgb(253 230 138 / 0.35);
}

.ring-amber-200\/40{
  --tw-ring-color: rgb(253 230 138 / 0.4);
}

.ring-amber-200\/45{
  --tw-ring-color: rgb(253 230 138 / 0.45);
}

.ring-amber-200\/5{
  --tw-ring-color: rgb(253 230 138 / 0.05);
}

.ring-amber-200\/50{
  --tw-ring-color: rgb(253 230 138 / 0.5);
}

.ring-amber-200\/55{
  --tw-ring-color: rgb(253 230 138 / 0.55);
}

.ring-amber-200\/60{
  --tw-ring-color: rgb(253 230 138 / 0.6);
}

.ring-amber-200\/65{
  --tw-ring-color: rgb(253 230 138 / 0.65);
}

.ring-amber-200\/70{
  --tw-ring-color: rgb(253 230 138 / 0.7);
}

.ring-amber-200\/75{
  --tw-ring-color: rgb(253 230 138 / 0.75);
}

.ring-amber-200\/80{
  --tw-ring-color: rgb(253 230 138 / 0.8);
}

.ring-amber-200\/85{
  --tw-ring-color: rgb(253 230 138 / 0.85);
}

.ring-amber-200\/90{
  --tw-ring-color: rgb(253 230 138 / 0.9);
}

.ring-amber-200\/95{
  --tw-ring-color: rgb(253 230 138 / 0.95);
}

.ring-amber-300{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(252 211 77 / var(--tw-ring-opacity));
}

.ring-amber-300\/0{
  --tw-ring-color: rgb(252 211 77 / 0);
}

.ring-amber-300\/10{
  --tw-ring-color: rgb(252 211 77 / 0.1);
}

.ring-amber-300\/100{
  --tw-ring-color: rgb(252 211 77 / 1);
}

.ring-amber-300\/15{
  --tw-ring-color: rgb(252 211 77 / 0.15);
}

.ring-amber-300\/20{
  --tw-ring-color: rgb(252 211 77 / 0.2);
}

.ring-amber-300\/25{
  --tw-ring-color: rgb(252 211 77 / 0.25);
}

.ring-amber-300\/30{
  --tw-ring-color: rgb(252 211 77 / 0.3);
}

.ring-amber-300\/35{
  --tw-ring-color: rgb(252 211 77 / 0.35);
}

.ring-amber-300\/40{
  --tw-ring-color: rgb(252 211 77 / 0.4);
}

.ring-amber-300\/45{
  --tw-ring-color: rgb(252 211 77 / 0.45);
}

.ring-amber-300\/5{
  --tw-ring-color: rgb(252 211 77 / 0.05);
}

.ring-amber-300\/50{
  --tw-ring-color: rgb(252 211 77 / 0.5);
}

.ring-amber-300\/55{
  --tw-ring-color: rgb(252 211 77 / 0.55);
}

.ring-amber-300\/60{
  --tw-ring-color: rgb(252 211 77 / 0.6);
}

.ring-amber-300\/65{
  --tw-ring-color: rgb(252 211 77 / 0.65);
}

.ring-amber-300\/70{
  --tw-ring-color: rgb(252 211 77 / 0.7);
}

.ring-amber-300\/75{
  --tw-ring-color: rgb(252 211 77 / 0.75);
}

.ring-amber-300\/80{
  --tw-ring-color: rgb(252 211 77 / 0.8);
}

.ring-amber-300\/85{
  --tw-ring-color: rgb(252 211 77 / 0.85);
}

.ring-amber-300\/90{
  --tw-ring-color: rgb(252 211 77 / 0.9);
}

.ring-amber-300\/95{
  --tw-ring-color: rgb(252 211 77 / 0.95);
}

.ring-amber-400{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(251 191 36 / var(--tw-ring-opacity));
}

.ring-amber-400\/0{
  --tw-ring-color: rgb(251 191 36 / 0);
}

.ring-amber-400\/10{
  --tw-ring-color: rgb(251 191 36 / 0.1);
}

.ring-amber-400\/100{
  --tw-ring-color: rgb(251 191 36 / 1);
}

.ring-amber-400\/15{
  --tw-ring-color: rgb(251 191 36 / 0.15);
}

.ring-amber-400\/20{
  --tw-ring-color: rgb(251 191 36 / 0.2);
}

.ring-amber-400\/25{
  --tw-ring-color: rgb(251 191 36 / 0.25);
}

.ring-amber-400\/30{
  --tw-ring-color: rgb(251 191 36 / 0.3);
}

.ring-amber-400\/35{
  --tw-ring-color: rgb(251 191 36 / 0.35);
}

.ring-amber-400\/40{
  --tw-ring-color: rgb(251 191 36 / 0.4);
}

.ring-amber-400\/45{
  --tw-ring-color: rgb(251 191 36 / 0.45);
}

.ring-amber-400\/5{
  --tw-ring-color: rgb(251 191 36 / 0.05);
}

.ring-amber-400\/50{
  --tw-ring-color: rgb(251 191 36 / 0.5);
}

.ring-amber-400\/55{
  --tw-ring-color: rgb(251 191 36 / 0.55);
}

.ring-amber-400\/60{
  --tw-ring-color: rgb(251 191 36 / 0.6);
}

.ring-amber-400\/65{
  --tw-ring-color: rgb(251 191 36 / 0.65);
}

.ring-amber-400\/70{
  --tw-ring-color: rgb(251 191 36 / 0.7);
}

.ring-amber-400\/75{
  --tw-ring-color: rgb(251 191 36 / 0.75);
}

.ring-amber-400\/80{
  --tw-ring-color: rgb(251 191 36 / 0.8);
}

.ring-amber-400\/85{
  --tw-ring-color: rgb(251 191 36 / 0.85);
}

.ring-amber-400\/90{
  --tw-ring-color: rgb(251 191 36 / 0.9);
}

.ring-amber-400\/95{
  --tw-ring-color: rgb(251 191 36 / 0.95);
}

.ring-amber-50{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 251 235 / var(--tw-ring-opacity));
}

.ring-amber-50\/0{
  --tw-ring-color: rgb(255 251 235 / 0);
}

.ring-amber-50\/10{
  --tw-ring-color: rgb(255 251 235 / 0.1);
}

.ring-amber-50\/100{
  --tw-ring-color: rgb(255 251 235 / 1);
}

.ring-amber-50\/15{
  --tw-ring-color: rgb(255 251 235 / 0.15);
}

.ring-amber-50\/20{
  --tw-ring-color: rgb(255 251 235 / 0.2);
}

.ring-amber-50\/25{
  --tw-ring-color: rgb(255 251 235 / 0.25);
}

.ring-amber-50\/30{
  --tw-ring-color: rgb(255 251 235 / 0.3);
}

.ring-amber-50\/35{
  --tw-ring-color: rgb(255 251 235 / 0.35);
}

.ring-amber-50\/40{
  --tw-ring-color: rgb(255 251 235 / 0.4);
}

.ring-amber-50\/45{
  --tw-ring-color: rgb(255 251 235 / 0.45);
}

.ring-amber-50\/5{
  --tw-ring-color: rgb(255 251 235 / 0.05);
}

.ring-amber-50\/50{
  --tw-ring-color: rgb(255 251 235 / 0.5);
}

.ring-amber-50\/55{
  --tw-ring-color: rgb(255 251 235 / 0.55);
}

.ring-amber-50\/60{
  --tw-ring-color: rgb(255 251 235 / 0.6);
}

.ring-amber-50\/65{
  --tw-ring-color: rgb(255 251 235 / 0.65);
}

.ring-amber-50\/70{
  --tw-ring-color: rgb(255 251 235 / 0.7);
}

.ring-amber-50\/75{
  --tw-ring-color: rgb(255 251 235 / 0.75);
}

.ring-amber-50\/80{
  --tw-ring-color: rgb(255 251 235 / 0.8);
}

.ring-amber-50\/85{
  --tw-ring-color: rgb(255 251 235 / 0.85);
}

.ring-amber-50\/90{
  --tw-ring-color: rgb(255 251 235 / 0.9);
}

.ring-amber-50\/95{
  --tw-ring-color: rgb(255 251 235 / 0.95);
}

.ring-amber-500{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(245 158 11 / var(--tw-ring-opacity));
}

.ring-amber-500\/0{
  --tw-ring-color: rgb(245 158 11 / 0);
}

.ring-amber-500\/10{
  --tw-ring-color: rgb(245 158 11 / 0.1);
}

.ring-amber-500\/100{
  --tw-ring-color: rgb(245 158 11 / 1);
}

.ring-amber-500\/15{
  --tw-ring-color: rgb(245 158 11 / 0.15);
}

.ring-amber-500\/20{
  --tw-ring-color: rgb(245 158 11 / 0.2);
}

.ring-amber-500\/25{
  --tw-ring-color: rgb(245 158 11 / 0.25);
}

.ring-amber-500\/30{
  --tw-ring-color: rgb(245 158 11 / 0.3);
}

.ring-amber-500\/35{
  --tw-ring-color: rgb(245 158 11 / 0.35);
}

.ring-amber-500\/40{
  --tw-ring-color: rgb(245 158 11 / 0.4);
}

.ring-amber-500\/45{
  --tw-ring-color: rgb(245 158 11 / 0.45);
}

.ring-amber-500\/5{
  --tw-ring-color: rgb(245 158 11 / 0.05);
}

.ring-amber-500\/50{
  --tw-ring-color: rgb(245 158 11 / 0.5);
}

.ring-amber-500\/55{
  --tw-ring-color: rgb(245 158 11 / 0.55);
}

.ring-amber-500\/60{
  --tw-ring-color: rgb(245 158 11 / 0.6);
}

.ring-amber-500\/65{
  --tw-ring-color: rgb(245 158 11 / 0.65);
}

.ring-amber-500\/70{
  --tw-ring-color: rgb(245 158 11 / 0.7);
}

.ring-amber-500\/75{
  --tw-ring-color: rgb(245 158 11 / 0.75);
}

.ring-amber-500\/80{
  --tw-ring-color: rgb(245 158 11 / 0.8);
}

.ring-amber-500\/85{
  --tw-ring-color: rgb(245 158 11 / 0.85);
}

.ring-amber-500\/90{
  --tw-ring-color: rgb(245 158 11 / 0.9);
}

.ring-amber-500\/95{
  --tw-ring-color: rgb(245 158 11 / 0.95);
}

.ring-amber-600{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(217 119 6 / var(--tw-ring-opacity));
}

.ring-amber-600\/0{
  --tw-ring-color: rgb(217 119 6 / 0);
}

.ring-amber-600\/10{
  --tw-ring-color: rgb(217 119 6 / 0.1);
}

.ring-amber-600\/100{
  --tw-ring-color: rgb(217 119 6 / 1);
}

.ring-amber-600\/15{
  --tw-ring-color: rgb(217 119 6 / 0.15);
}

.ring-amber-600\/20{
  --tw-ring-color: rgb(217 119 6 / 0.2);
}

.ring-amber-600\/25{
  --tw-ring-color: rgb(217 119 6 / 0.25);
}

.ring-amber-600\/30{
  --tw-ring-color: rgb(217 119 6 / 0.3);
}

.ring-amber-600\/35{
  --tw-ring-color: rgb(217 119 6 / 0.35);
}

.ring-amber-600\/40{
  --tw-ring-color: rgb(217 119 6 / 0.4);
}

.ring-amber-600\/45{
  --tw-ring-color: rgb(217 119 6 / 0.45);
}

.ring-amber-600\/5{
  --tw-ring-color: rgb(217 119 6 / 0.05);
}

.ring-amber-600\/50{
  --tw-ring-color: rgb(217 119 6 / 0.5);
}

.ring-amber-600\/55{
  --tw-ring-color: rgb(217 119 6 / 0.55);
}

.ring-amber-600\/60{
  --tw-ring-color: rgb(217 119 6 / 0.6);
}

.ring-amber-600\/65{
  --tw-ring-color: rgb(217 119 6 / 0.65);
}

.ring-amber-600\/70{
  --tw-ring-color: rgb(217 119 6 / 0.7);
}

.ring-amber-600\/75{
  --tw-ring-color: rgb(217 119 6 / 0.75);
}

.ring-amber-600\/80{
  --tw-ring-color: rgb(217 119 6 / 0.8);
}

.ring-amber-600\/85{
  --tw-ring-color: rgb(217 119 6 / 0.85);
}

.ring-amber-600\/90{
  --tw-ring-color: rgb(217 119 6 / 0.9);
}

.ring-amber-600\/95{
  --tw-ring-color: rgb(217 119 6 / 0.95);
}

.ring-amber-700{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(180 83 9 / var(--tw-ring-opacity));
}

.ring-amber-700\/0{
  --tw-ring-color: rgb(180 83 9 / 0);
}

.ring-amber-700\/10{
  --tw-ring-color: rgb(180 83 9 / 0.1);
}

.ring-amber-700\/100{
  --tw-ring-color: rgb(180 83 9 / 1);
}

.ring-amber-700\/15{
  --tw-ring-color: rgb(180 83 9 / 0.15);
}

.ring-amber-700\/20{
  --tw-ring-color: rgb(180 83 9 / 0.2);
}

.ring-amber-700\/25{
  --tw-ring-color: rgb(180 83 9 / 0.25);
}

.ring-amber-700\/30{
  --tw-ring-color: rgb(180 83 9 / 0.3);
}

.ring-amber-700\/35{
  --tw-ring-color: rgb(180 83 9 / 0.35);
}

.ring-amber-700\/40{
  --tw-ring-color: rgb(180 83 9 / 0.4);
}

.ring-amber-700\/45{
  --tw-ring-color: rgb(180 83 9 / 0.45);
}

.ring-amber-700\/5{
  --tw-ring-color: rgb(180 83 9 / 0.05);
}

.ring-amber-700\/50{
  --tw-ring-color: rgb(180 83 9 / 0.5);
}

.ring-amber-700\/55{
  --tw-ring-color: rgb(180 83 9 / 0.55);
}

.ring-amber-700\/60{
  --tw-ring-color: rgb(180 83 9 / 0.6);
}

.ring-amber-700\/65{
  --tw-ring-color: rgb(180 83 9 / 0.65);
}

.ring-amber-700\/70{
  --tw-ring-color: rgb(180 83 9 / 0.7);
}

.ring-amber-700\/75{
  --tw-ring-color: rgb(180 83 9 / 0.75);
}

.ring-amber-700\/80{
  --tw-ring-color: rgb(180 83 9 / 0.8);
}

.ring-amber-700\/85{
  --tw-ring-color: rgb(180 83 9 / 0.85);
}

.ring-amber-700\/90{
  --tw-ring-color: rgb(180 83 9 / 0.9);
}

.ring-amber-700\/95{
  --tw-ring-color: rgb(180 83 9 / 0.95);
}

.ring-amber-800{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(146 64 14 / var(--tw-ring-opacity));
}

.ring-amber-800\/0{
  --tw-ring-color: rgb(146 64 14 / 0);
}

.ring-amber-800\/10{
  --tw-ring-color: rgb(146 64 14 / 0.1);
}

.ring-amber-800\/100{
  --tw-ring-color: rgb(146 64 14 / 1);
}

.ring-amber-800\/15{
  --tw-ring-color: rgb(146 64 14 / 0.15);
}

.ring-amber-800\/20{
  --tw-ring-color: rgb(146 64 14 / 0.2);
}

.ring-amber-800\/25{
  --tw-ring-color: rgb(146 64 14 / 0.25);
}

.ring-amber-800\/30{
  --tw-ring-color: rgb(146 64 14 / 0.3);
}

.ring-amber-800\/35{
  --tw-ring-color: rgb(146 64 14 / 0.35);
}

.ring-amber-800\/40{
  --tw-ring-color: rgb(146 64 14 / 0.4);
}

.ring-amber-800\/45{
  --tw-ring-color: rgb(146 64 14 / 0.45);
}

.ring-amber-800\/5{
  --tw-ring-color: rgb(146 64 14 / 0.05);
}

.ring-amber-800\/50{
  --tw-ring-color: rgb(146 64 14 / 0.5);
}

.ring-amber-800\/55{
  --tw-ring-color: rgb(146 64 14 / 0.55);
}

.ring-amber-800\/60{
  --tw-ring-color: rgb(146 64 14 / 0.6);
}

.ring-amber-800\/65{
  --tw-ring-color: rgb(146 64 14 / 0.65);
}

.ring-amber-800\/70{
  --tw-ring-color: rgb(146 64 14 / 0.7);
}

.ring-amber-800\/75{
  --tw-ring-color: rgb(146 64 14 / 0.75);
}

.ring-amber-800\/80{
  --tw-ring-color: rgb(146 64 14 / 0.8);
}

.ring-amber-800\/85{
  --tw-ring-color: rgb(146 64 14 / 0.85);
}

.ring-amber-800\/90{
  --tw-ring-color: rgb(146 64 14 / 0.9);
}

.ring-amber-800\/95{
  --tw-ring-color: rgb(146 64 14 / 0.95);
}

.ring-amber-900{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(120 53 15 / var(--tw-ring-opacity));
}

.ring-amber-900\/0{
  --tw-ring-color: rgb(120 53 15 / 0);
}

.ring-amber-900\/10{
  --tw-ring-color: rgb(120 53 15 / 0.1);
}

.ring-amber-900\/100{
  --tw-ring-color: rgb(120 53 15 / 1);
}

.ring-amber-900\/15{
  --tw-ring-color: rgb(120 53 15 / 0.15);
}

.ring-amber-900\/20{
  --tw-ring-color: rgb(120 53 15 / 0.2);
}

.ring-amber-900\/25{
  --tw-ring-color: rgb(120 53 15 / 0.25);
}

.ring-amber-900\/30{
  --tw-ring-color: rgb(120 53 15 / 0.3);
}

.ring-amber-900\/35{
  --tw-ring-color: rgb(120 53 15 / 0.35);
}

.ring-amber-900\/40{
  --tw-ring-color: rgb(120 53 15 / 0.4);
}

.ring-amber-900\/45{
  --tw-ring-color: rgb(120 53 15 / 0.45);
}

.ring-amber-900\/5{
  --tw-ring-color: rgb(120 53 15 / 0.05);
}

.ring-amber-900\/50{
  --tw-ring-color: rgb(120 53 15 / 0.5);
}

.ring-amber-900\/55{
  --tw-ring-color: rgb(120 53 15 / 0.55);
}

.ring-amber-900\/60{
  --tw-ring-color: rgb(120 53 15 / 0.6);
}

.ring-amber-900\/65{
  --tw-ring-color: rgb(120 53 15 / 0.65);
}

.ring-amber-900\/70{
  --tw-ring-color: rgb(120 53 15 / 0.7);
}

.ring-amber-900\/75{
  --tw-ring-color: rgb(120 53 15 / 0.75);
}

.ring-amber-900\/80{
  --tw-ring-color: rgb(120 53 15 / 0.8);
}

.ring-amber-900\/85{
  --tw-ring-color: rgb(120 53 15 / 0.85);
}

.ring-amber-900\/90{
  --tw-ring-color: rgb(120 53 15 / 0.9);
}

.ring-amber-900\/95{
  --tw-ring-color: rgb(120 53 15 / 0.95);
}

.ring-amber-950{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(69 26 3 / var(--tw-ring-opacity));
}

.ring-amber-950\/0{
  --tw-ring-color: rgb(69 26 3 / 0);
}

.ring-amber-950\/10{
  --tw-ring-color: rgb(69 26 3 / 0.1);
}

.ring-amber-950\/100{
  --tw-ring-color: rgb(69 26 3 / 1);
}

.ring-amber-950\/15{
  --tw-ring-color: rgb(69 26 3 / 0.15);
}

.ring-amber-950\/20{
  --tw-ring-color: rgb(69 26 3 / 0.2);
}

.ring-amber-950\/25{
  --tw-ring-color: rgb(69 26 3 / 0.25);
}

.ring-amber-950\/30{
  --tw-ring-color: rgb(69 26 3 / 0.3);
}

.ring-amber-950\/35{
  --tw-ring-color: rgb(69 26 3 / 0.35);
}

.ring-amber-950\/40{
  --tw-ring-color: rgb(69 26 3 / 0.4);
}

.ring-amber-950\/45{
  --tw-ring-color: rgb(69 26 3 / 0.45);
}

.ring-amber-950\/5{
  --tw-ring-color: rgb(69 26 3 / 0.05);
}

.ring-amber-950\/50{
  --tw-ring-color: rgb(69 26 3 / 0.5);
}

.ring-amber-950\/55{
  --tw-ring-color: rgb(69 26 3 / 0.55);
}

.ring-amber-950\/60{
  --tw-ring-color: rgb(69 26 3 / 0.6);
}

.ring-amber-950\/65{
  --tw-ring-color: rgb(69 26 3 / 0.65);
}

.ring-amber-950\/70{
  --tw-ring-color: rgb(69 26 3 / 0.7);
}

.ring-amber-950\/75{
  --tw-ring-color: rgb(69 26 3 / 0.75);
}

.ring-amber-950\/80{
  --tw-ring-color: rgb(69 26 3 / 0.8);
}

.ring-amber-950\/85{
  --tw-ring-color: rgb(69 26 3 / 0.85);
}

.ring-amber-950\/90{
  --tw-ring-color: rgb(69 26 3 / 0.9);
}

.ring-amber-950\/95{
  --tw-ring-color: rgb(69 26 3 / 0.95);
}

.ring-amber-glow{
  --tw-ring-color: var(--amber-glow);
}

.ring-background{
  --tw-ring-color: var(--background);
}

.ring-border{
  --tw-ring-color: var(--border);
}

.ring-destructive{
  --tw-ring-color: var(--destructive);
}

.ring-destructive-foreground{
  --tw-ring-color: var(--destructive-foreground);
}

.ring-ember{
  --tw-ring-color: var(--primary);
}

.ring-muted{
  --tw-ring-color: var(--muted);
}

.ring-muted-foreground{
  --tw-ring-color: var(--muted-foreground);
}

.ring-primary{
  --tw-ring-color: var(--primary);
}

.ring-primary-foreground{
  --tw-ring-color: var(--primary-foreground);
}

.ring-primary-glow{
  --tw-ring-color: var(--primary-glow);
}

.ring-surface{
  --tw-ring-color: var(--surface);
}

.ring-surface-2{
  --tw-ring-color: var(--surface-2);
}

.blur{
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.blur-\[100px\]{
  --tw-blur: blur(100px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.blur-\[120px\]{
  --tw-blur: blur(120px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.blur-xl{
  --tw-blur: blur(24px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.grayscale{
  --tw-grayscale: grayscale(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter{
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.backdrop-blur{
  --tw-backdrop-blur: blur(8px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-md{
  --tw-backdrop-blur: blur(12px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-sm{
  --tw-backdrop-blur: blur(4px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-xl{
  --tw-backdrop-blur: blur(24px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-filter{
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.transition{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-all{
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-colors{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-opacity{
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-transform{
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.duration-300{
  transition-duration: 300ms;
}

.duration-500{
  transition-duration: 500ms;
}

.duration-700{
  transition-duration: 700ms;
}

.ease-in-out{
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.ease-out{
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.line-clamp-2{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.line-clamp-5{
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.text-ember{
  background: var(--gradient-ember);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.bg-ember{
  background-image: var(--gradient-ember);
}

.glow-ember{
  box-shadow: var(--shadow-ember);
}

.glow-ember-sm{
  box-shadow: var(--shadow-ember-sm);
}

.ember-ring{
  box-shadow: var(--shadow-glow-inset);
}

.scanlines{
  background-image: var(--gradient-scan);
}

.label-mono{
  font-family: var(--font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--primary);
}

.\[color\:var\\\\\(--primary\\\\\)\\\\\]{
  color: var\\(--primary\\)\\;
}

.\[direction\:ltr\]{
  direction: ltr;
}

.\[mask-image\:linear-gradient\(90deg\2c transparent\2c black_10\%\2c black_90\%\2c transparent\)\]{
  -webkit-mask-image: linear-gradient(90deg,transparent,black 10%,black 90%,transparent);
          mask-image: linear-gradient(90deg,transparent,black 10%,black 90%,transparent);
}

.\[mask-image\:linear-gradient\(90deg\2c transparent\2c black_6\%\2c black_94\%\2c transparent\)\]{
  -webkit-mask-image: linear-gradient(90deg,transparent,black 6%,black 94%,transparent);
          mask-image: linear-gradient(90deg,transparent,black 6%,black 94%,transparent);
}

/* ============================
   Global overflow protection
   ============================ */

.team-swiper,
.banner-slider,
.cards-carousel-swiper,
.testimonials-swiper {
  max-width: 100%;
}

/* ============================
   Custom Scrollbar
   ============================ */

* {
  scrollbar-width: thin;
  scrollbar-color: var(--primary) transparent;
}

*::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

*::-webkit-scrollbar-track {
  background: transparent;
}

*::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--primary), var(--primary-glow));
  border-radius: 999px;
  border: 2px solid var(--background);
}

/* ============================
   Scanlines
   ============================ */

.scanlines-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: var(--gradient-scan);
  mix-blend-mode: overlay;
  opacity: 0.4;
}

@keyframes scan {
  from {
    background-position: 0 0;
  }

  to {
    background-position: 0 100%;
  }
}

.animate-scan {
  animation: scan 8s linear infinite;
}

/* ============================
   Marquee (seamless tech stack)
   ============================ */

.marquee {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  gap: 2rem;
  animation: marquee 40s linear infinite;
}

.marquee-mask {
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
}

/* --- Responsive display --- */

@media (min-width: 640px) {
  .sm\:inline-flex {
    display: inline-flex !important;
  }

  .sm\:hidden {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .md\:hidden {
    display: none !important;
  }

  .md\:grid {
    display: grid !important;
  }
}

@media (min-width: 1024px) {
  .lg\:inline-flex {
    display: inline-flex !important;
  }

  .lg\:hidden {
    display: none !important;
  }

  .lg\:grid {
    display: grid !important;
  }

  .lg\:block {
    display: block !important;
  }

  .lg\:flex-row {
    flex-direction: row !important;
  }

  .lg\:items-center {
    align-items: center !important;
  }
}

/* --- bg-foreground opacity --- */

.bg-foreground\/5,
.hover\:bg-foreground\/5:hover {
  background: color-mix(in oklab, var(--foreground) 5%, transparent);
}

/* --- bg-muted opacity --- */

.bg-muted\/40 {
  background: color-mix(in oklab, var(--muted) 40%, transparent);
}

/* --- border-border opacity --- */

.border-border\/60 {
  border-color: color-mix(in oklab, var(--border) 60%, transparent);
}

/* --- border-primary opacity --- */

.border-primary\/60,
.hover\:border-primary\/60:hover {
  border-color: color-mix(in oklab, var(--primary) 60%, transparent);
}

.border-primary\/50,
.hover\:border-primary\/50:hover {
  border-color: color-mix(in oklab, var(--primary) 50%, transparent);
}

.border-primary\/40 {
  border-color: color-mix(in oklab, var(--primary) 40%, transparent);
}

.border-primary\/30 {
  border-color: color-mix(in oklab, var(--primary) 30%, transparent);
}

.ring-primary\/40 {
  --tw-ring-color: color-mix(in oklab, var(--primary) 40%, transparent);
}

/* --- text/background accent opacity --- */

.text-accent\/30 {
  color: color-mix(in oklab, var(--accent) 30%, transparent);
}

.group:hover .group-hover\:text-accent\/60 {
  color: color-mix(in oklab, var(--accent) 60%, transparent);
}

.text-background\/90 {
  color: color-mix(in oklab, var(--background) 90%, transparent);
}

.text-background\/60 {
  color: color-mix(in oklab, var(--background) 60%, transparent);
}

.ring-accent\/40 {
  --tw-ring-color: color-mix(in oklab, var(--accent) 40%, transparent);
}

/* --- hover background light --- */

.hover-bg-foreground-5:hover,
.hover\:bg-foreground-5:hover {
  background: color-mix(in oklab, var(--foreground) 5%, transparent);
}

.bg-foreground-5 {
  background: color-mix(in oklab, var(--foreground) 5%, transparent);
}

/* --- bg-background with opacity --- */

.bg-background\/80 {
  background: color-mix(in oklab, var(--background) 80%, transparent);
}

.bg-background\/70 {
  background: color-mix(in oklab, var(--background) 70%, transparent);
}

.bg-background\/60 {
  background: color-mix(in oklab, var(--background) 60%, transparent);
}

.bg-background\/40 {
  background: color-mix(in oklab, var(--background) 40%, transparent);
}

.bg-surface\/40 {
  background: color-mix(in oklab, var(--surface) 40%, transparent);
}

.bg-background\/\[0\.07\] {
  background: color-mix(in oklab, var(--background) 7%, transparent);
}

.hover\:bg-background\/\[0\.07\]:hover {
  background: color-mix(in oklab, var(--background) 7%, transparent);
}

.hover\:border-accent\/40:hover {
  border-color: color-mix(in oklab, var(--accent) 40%, transparent);
}

/* --- white opacity --- */

.border-white\/20 {
  border-color: color-mix(in srgb, white 20%, transparent);
}

/* --- group hover --- */

.group:hover .group-hover\:text-primary {
  color: var(--primary);
}

/* --- translate hover --- */

.hover\:-translate-y-1:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

/* ============================
   CKEditor list styling (Lovable check)
   ============================ */

ul:not([class]),
ol:not([class]) {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 1rem 0;
}

ul:not([class]) li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding-left: 0;
}

ul:not([class]) li::before {
  content: "";
  display: inline-flex;
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  background-color: var(--primary);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

ol:not([class]) li::marker {
  color: var(--primary);
  font-weight: 600;
}

/* ============================
   Theme-aware text colors
   ============================ */

.text-white-black {
  color: #fff;
}

html.light .text-white-black {
  color: #000;
}

.last\:border-0:last-child{
  border-width: 0px;
}

.last\:pb-0:last-child{
  padding-bottom: 0px;
}

.hover\:-translate-y-1:hover{
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:border-accent:hover{
  border-color: var(--accent);
}

.hover\:border-green-600:hover{
  --tw-border-opacity: 1;
  border-color: rgb(22 163 74 / var(--tw-border-opacity));
}

.hover\:border-neutral-900:hover{
  --tw-border-opacity: 1;
  border-color: rgb(23 23 23 / var(--tw-border-opacity));
}

.hover\:border-primary:hover{
  border-color: var(--primary);
}

.hover\:bg-card:hover{
  background-color: var(--card);
}

.hover\:bg-emerald-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(4 120 87 / var(--tw-bg-opacity));
}

.hover\:bg-emerald-800:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(6 95 70 / var(--tw-bg-opacity));
}

.hover\:bg-emerald-900:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(6 78 59 / var(--tw-bg-opacity));
}

.hover\:bg-green-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(22 163 74 / var(--tw-bg-opacity));
}

.hover\:bg-muted:hover{
  background-color: var(--muted);
}

.hover\:bg-primary:hover{
  background-color: var(--primary);
}

.hover\:bg-white\/10:hover{
  background-color: rgb(255 255 255 / 0.1);
}

.hover\:bg-white\/90:hover{
  background-color: rgb(255 255 255 / 0.9);
}

.hover\:text-accent-foreground:hover{
  color: var(--accent-foreground);
}

.hover\:text-emerald-700:hover{
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity));
}

.hover\:text-foreground:hover{
  color: var(--foreground);
}

.hover\:text-gray-900:hover{
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity));
}

.hover\:text-neutral-700:hover{
  --tw-text-opacity: 1;
  color: rgb(64 64 64 / var(--tw-text-opacity));
}

.hover\:text-primary:hover{
  color: var(--primary);
}

.hover\:text-primary-glow:hover{
  color: var(--primary-glow);
}

.hover\:text-red-800:hover{
  --tw-text-opacity: 1;
  color: rgb(153 27 27 / var(--tw-text-opacity));
}

.hover\:text-white:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity));
}

.hover\:underline:hover{
  text-decoration-line: underline;
}

.hover\:opacity-70:hover{
  opacity: 0.7;
}

.hover\:opacity-90:hover{
  opacity: 0.9;
}

.hover\:opacity-95:hover{
  opacity: 0.95;
}

.hover\:shadow-lg:hover{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:brightness-110:hover{
  --tw-brightness: brightness(1.1);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.hover\:\[animation-play-state\:paused\]:hover{
  animation-play-state: paused;
}

.focus\:border-\[color\:var\(--primary\)\]:focus{
  border-color: var(--primary);
}

.focus\:outline-none:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-2:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-ring:focus{
  --tw-ring-color: var(--ring);
}

.focus\:ring-offset-2:focus{
  --tw-ring-offset-width: 2px;
}

.focus-visible\:outline-none:focus-visible{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus-visible\:ring-1:focus-visible{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-visible\:ring-ring:focus-visible{
  --tw-ring-color: var(--ring);
}

.active\:scale-\[0\.99\]:active{
  --tw-scale-x: 0.99;
  --tw-scale-y: 0.99;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.disabled\:pointer-events-none:disabled{
  pointer-events: none;
}

.disabled\:cursor-not-allowed:disabled{
  cursor: not-allowed;
}

.disabled\:opacity-50:disabled{
  opacity: 0.5;
}

.group:hover .group-hover\:translate-x-0\.5{
  --tw-translate-x: 0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-105{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-110{
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:bg-amber-600{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity));
}

.group:hover .group-hover\:text-foreground{
  color: var(--foreground);
}

.group:hover .group-hover\:text-primary{
  color: var(--primary);
}

.group:hover .group-hover\:text-primary-glow{
  color: var(--primary-glow);
}

.group:hover .group-hover\:opacity-100{
  opacity: 1;
}

.group:hover .group-hover\:opacity-40{
  opacity: 0.4;
}

.group:hover .group-hover\:grayscale-0{
  --tw-grayscale: grayscale(0);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.prose-headings\:text-foreground :is(:where(h1, h2, h3, h4, h5, h6, th):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  color: var(--foreground);
}

.prose-p\:text-muted-foreground :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  color: var(--muted-foreground);
}

.prose-a\:text-primary :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  color: var(--primary);
}

.prose-strong\:text-foreground :is(:where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  color: var(--foreground);
}

.prose-code\:rounded :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  border-radius: 0.25rem;
}

.prose-code\:bg-card :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  background-color: var(--card);
}

.prose-code\:px-1\.5 :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}

.prose-code\:py-0\.5 :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.prose-code\:text-primary :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  color: var(--primary);
}

.prose-code\:before\:content-none :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)))::before{
  --tw-content: none;
  content: var(--tw-content);
}

.prose-code\:after\:content-none :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)))::after{
  --tw-content: none;
  content: var(--tw-content);
}

.prose-pre\:border :is(:where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  border-width: 1px;
}

.prose-pre\:border-border :is(:where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  border-color: var(--border);
}

.prose-pre\:bg-card :is(:where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  background-color: var(--card);
}

.prose-img\:rounded-xl :is(:where(img):not(:where([class~="not-prose"],[class~="not-prose"] *))){
  border-radius: calc(var(--radius) + 4px);
}

@media (min-width: 640px){
  .sm\:inline-flex{
    display: inline-flex;
  }

  .sm\:hidden{
    display: none;
  }

  .sm\:h-32{
    height: 8rem;
  }

  .sm\:h-60{
    height: 15rem;
  }

  .sm\:w-32{
    width: 8rem;
  }

  .sm\:w-60{
    width: 15rem;
  }

  .sm\:w-auto{
    width: auto;
  }

  .sm\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

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

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

  .sm\:px-0{
    padding-left: 0px;
    padding-right: 0px;
  }

  .sm\:px-6{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .sm\:text-4xl{
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}

@media (min-width: 768px){
  .md\:left-1\/2{
    left: 50%;
  }

  .md\:top-1\/2{
    top: 50%;
  }

  .md\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .md\:block{
    display: block;
  }

  .md\:flex{
    display: flex;
  }

  .md\:grid{
    display: grid;
  }

  .md\:hidden{
    display: none;
  }

  .md\:-translate-y-1\/2{
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .md\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

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

  .md\:items-end{
    align-items: flex-end;
  }

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

  .md\:gap-12{
    gap: 3rem;
  }

  .md\:p-12{
    padding: 3rem;
  }

  .md\:px-6{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .md\:py-24{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .md\:py-28{
    padding-top: 7rem;
    padding-bottom: 7rem;
  }

  .md\:pl-0{
    padding-left: 0px;
  }

  .md\:text-4xl{
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .md\:text-5xl{
    font-size: 3rem;
    line-height: 1;
  }

  .md\:text-6xl{
    font-size: 3.75rem;
    line-height: 1;
  }

  .md\:\[direction\:rtl\]{
    direction: rtl;
  }
}

@media (min-width: 1024px){
  .lg\:order-1{
    order: 1;
  }

  .lg\:order-2{
    order: 2;
  }

  .lg\:col-span-1{
    grid-column: span 1 / span 1;
  }

  .lg\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .lg\:col-span-3{
    grid-column: span 3 / span 3;
  }

  .lg\:mx-0{
    margin-left: 0px;
    margin-right: 0px;
  }

  .lg\:block{
    display: block;
  }

  .lg\:flex{
    display: flex;
  }

  .lg\:inline-flex{
    display: inline-flex;
  }

  .lg\:grid{
    display: grid;
  }

  .lg\:hidden{
    display: none;
  }

  .lg\:h-40{
    height: 10rem;
  }

  .lg\:w-40{
    width: 10rem;
  }

  .lg\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lg\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lg\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .lg\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .lg\:grid-cols-\[1fr_auto\]{
    grid-template-columns: 1fr auto;
  }

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

  .lg\:justify-start{
    justify-content: flex-start;
  }

  .lg\:gap-12{
    gap: 3rem;
  }

  .lg\:gap-16{
    gap: 4rem;
  }

  .lg\:gap-8{
    gap: 2rem;
  }

  .lg\:p-10{
    padding: 2.5rem;
  }

  .lg\:p-14{
    padding: 3.5rem;
  }

  .lg\:p-16{
    padding: 4rem;
  }

  .lg\:p-6{
    padding: 1.5rem;
  }

  .lg\:p-7{
    padding: 1.75rem;
  }

  .lg\:p-8{
    padding: 2rem;
  }

  .lg\:px-0{
    padding-left: 0px;
    padding-right: 0px;
  }

  .lg\:px-10{
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .lg\:px-12{
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .lg\:px-16{
    padding-left: 4rem;
    padding-right: 4rem;
  }

  .lg\:px-8{
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .lg\:py-10{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .lg\:py-20{
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .lg\:py-24{
    padding-top: 6rem;
    padding-bottom: 6rem;
  }

  .lg\:py-32{
    padding-top: 8rem;
    padding-bottom: 8rem;
  }

  .lg\:py-8{
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .lg\:pb-10{
    padding-bottom: 2.5rem;
  }

  .lg\:pt-20{
    padding-top: 5rem;
  }

  .lg\:text-left{
    text-align: left;
  }

  .lg\:text-2xl{
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .lg\:text-3xl{
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .lg\:text-4xl{
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .lg\:text-5xl{
    font-size: 3rem;
    line-height: 1;
  }

  .lg\:text-6xl{
    font-size: 3.75rem;
    line-height: 1;
  }

  .lg\:text-base{
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .lg\:text-xl{
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1280px){
  .xl\:sticky{
    position: sticky;
  }

  .xl\:top-0{
    top: 0px;
  }

  .xl\:z-0{
    z-index: 0;
  }

  .xl\:my-20{
    margin-top: 5rem;
    margin-bottom: 5rem;
  }

  .xl\:mb-20{
    margin-bottom: 5rem;
  }

  .xl\:mb-6{
    margin-bottom: 1.5rem;
  }

  .xl\:mt-24{
    margin-top: 6rem;
  }

  .xl\:hidden{
    display: none;
  }

  .xl\:h-screen{
    height: 100vh;
  }

  .xl\:w-80{
    width: 20rem;
  }

  .xl\:max-w-none{
    max-width: none;
  }

  .xl\:translate-x-0{
    --tw-translate-x: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .xl\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .xl\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .xl\:flex-wrap{
    flex-wrap: wrap;
  }

  .xl\:items-start{
    align-items: flex-start;
  }

  .xl\:py-20{
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .xl\:py-40{
    padding-top: 10rem;
    padding-bottom: 10rem;
  }

  .xl\:py-\[150px\]{
    padding-top: 150px;
    padding-bottom: 150px;
  }
}

@media (min-width: 1536px){
  .\32xl\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .\32xl\:px-0{
    padding-left: 0px;
    padding-right: 0px;
  }

  .\32xl\:py-10{
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}

.\[\&\>svg\]\:h-10>svg{
  height: 2.5rem;
}

.\[\&\>svg\]\:h-5>svg{
  height: 1.25rem;
}

.\[\&\>svg\]\:w-10>svg{
  width: 2.5rem;
}

.\[\&\>svg\]\:w-5>svg{
  width: 1.25rem;
}

.\[\&\>svg\]\:text-primary>svg{
  color: var(--primary);
}

.\[\&\>svg\]\:text-primary-foreground>svg{
  color: var(--primary-foreground);
}
