/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}

@layer theme {
  :root, :host {
    --color-white: #fff;
    --spacing: .25rem;
    --container-md: 28rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --color-navy: #000845;
    --color-indigo: #505ec5;
    --color-indigo-light: #6b77d4;
    --color-lavender: #d7dbfa;
    --color-red: #dc2626;
    --color-amber: #d97706;
    --color-green: #16a34a;
    --font-heading: "Outfit", sans-serif;
    --font-body: "Be Vietnam Pro", sans-serif;
  }
}

@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }

  .fixed {
    position: fixed;
  }

  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }

  .start {
    inset-inline-start: var(--spacing);
  }

  .right-0 {
    right: calc(var(--spacing) * 0);
  }

  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }

  .left-0 {
    left: calc(var(--spacing) * 0);
  }

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

  .container {
    width: 100%;
  }

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

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

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

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

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

  .mx-2 {
    margin-inline: calc(var(--spacing) * 2);
  }

  .mx-auto {
    margin-inline: auto;
  }

  .mt-0\.5 {
    margin-top: calc(var(--spacing) * .5);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }

  .block {
    display: block;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-flex {
    display: inline-flex;
  }

  .h-6 {
    height: calc(var(--spacing) * 6);
  }

  .h-20 {
    height: calc(var(--spacing) * 20);
  }

  .h-px {
    height: 1px;
  }

  .min-h-dvh {
    min-height: 100dvh;
  }

  .w-6 {
    width: calc(var(--spacing) * 6);
  }

  .w-20 {
    width: calc(var(--spacing) * 20);
  }

  .w-full {
    width: 100%;
  }

  .max-w-\[720px\] {
    max-width: 720px;
  }

  .max-w-md {
    max-width: var(--container-md);
  }

  .flex-1 {
    flex: 1;
  }

  .shrink-0 {
    flex-shrink: 0;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

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

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

  .items-start {
    align-items: flex-start;
  }

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

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

  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }

  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }

  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }

  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }

  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-xl {
    border-radius: var(--radius-xl);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }

  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .border-amber\/15 {
    border-color: #d9770626;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber\/15 {
      border-color: color-mix(in oklab, var(--color-amber) 15%, transparent);
    }
  }

  .border-amber\/30 {
    border-color: #d977064d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber\/30 {
      border-color: color-mix(in oklab, var(--color-amber) 30%, transparent);
    }
  }

  .border-green\/30 {
    border-color: #16a34a4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-green\/30 {
      border-color: color-mix(in oklab, var(--color-green) 30%, transparent);
    }
  }

  .border-indigo {
    border-color: var(--color-indigo);
  }

  .border-indigo\/10 {
    border-color: #505ec51a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-indigo\/10 {
      border-color: color-mix(in oklab, var(--color-indigo) 10%, transparent);
    }
  }

  .border-indigo\/15 {
    border-color: #505ec526;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-indigo\/15 {
      border-color: color-mix(in oklab, var(--color-indigo) 15%, transparent);
    }
  }

  .border-navy\/10 {
    border-color: #0008451a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-navy\/10 {
      border-color: color-mix(in oklab, var(--color-navy) 10%, transparent);
    }
  }

  .border-navy\/15 {
    border-color: #00084526;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-navy\/15 {
      border-color: color-mix(in oklab, var(--color-navy) 15%, transparent);
    }
  }

  .border-red\/15 {
    border-color: #dc262626;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red\/15 {
      border-color: color-mix(in oklab, var(--color-red) 15%, transparent);
    }
  }

  .border-red\/20 {
    border-color: #dc262633;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red\/20 {
      border-color: color-mix(in oklab, var(--color-red) 20%, transparent);
    }
  }

  .border-red\/30 {
    border-color: #dc26264d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red\/30 {
      border-color: color-mix(in oklab, var(--color-red) 30%, transparent);
    }
  }

  .bg-amber {
    background-color: var(--color-amber);
  }

  .bg-amber\/5 {
    background-color: #d977060d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber\/5 {
      background-color: color-mix(in oklab, var(--color-amber) 5%, transparent);
    }
  }

  .bg-amber\/10 {
    background-color: #d977061a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-amber\/10 {
      background-color: color-mix(in oklab, var(--color-amber) 10%, transparent);
    }
  }

  .bg-green {
    background-color: var(--color-green);
  }

  .bg-green\/10 {
    background-color: #16a34a1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-green\/10 {
      background-color: color-mix(in oklab, var(--color-green) 10%, transparent);
    }
  }

  .bg-indigo {
    background-color: var(--color-indigo);
  }

  .bg-indigo\/5 {
    background-color: #505ec50d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-indigo\/5 {
      background-color: color-mix(in oklab, var(--color-indigo) 5%, transparent);
    }
  }

  .bg-lavender {
    background-color: var(--color-lavender);
  }

  .bg-navy\/5 {
    background-color: #0008450d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-navy\/5 {
      background-color: color-mix(in oklab, var(--color-navy) 5%, transparent);
    }
  }

  .bg-navy\/10 {
    background-color: #0008451a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-navy\/10 {
      background-color: color-mix(in oklab, var(--color-navy) 10%, transparent);
    }
  }

  .bg-red {
    background-color: var(--color-red);
  }

  .bg-red\/5 {
    background-color: #dc26260d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red\/5 {
      background-color: color-mix(in oklab, var(--color-red) 5%, transparent);
    }
  }

  .bg-red\/10 {
    background-color: #dc26261a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red\/10 {
      background-color: color-mix(in oklab, var(--color-red) 10%, transparent);
    }
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .bg-white\/20 {
    background-color: #fff3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/20 {
      background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }

  .p-3\.5 {
    padding: calc(var(--spacing) * 3.5);
  }

  .p-4 {
    padding: calc(var(--spacing) * 4);
  }

  .p-5 {
    padding: calc(var(--spacing) * 5);
  }

  .p-6 {
    padding: calc(var(--spacing) * 6);
  }

  .\!px-5 {
    padding-inline: calc(var(--spacing) * 5) !important;
  }

  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }

  .\!py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5) !important;
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }

  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }

  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }

  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }

  .pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }

  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }

  .pt-10 {
    padding-top: calc(var(--spacing) * 10);
  }

  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }

  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }

  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }

  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }

  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }

  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }

  .pb-12 {
    padding-bottom: calc(var(--spacing) * 12);
  }

  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }

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

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

  .font-body {
    font-family: var(--font-body);
  }

  .font-heading {
    font-family: var(--font-heading);
  }

  .\!text-sm {
    font-size: var(--text-sm) !important;
    line-height: var(--tw-leading, var(--text-sm--line-height)) !important;
  }

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .leading-normal {
    --tw-leading: var(--leading-normal);
    line-height: var(--leading-normal);
  }

  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .whitespace-nowrap {
    white-space: nowrap;
  }

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

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

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

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

  .text-navy\/30 {
    color: #0008454d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-navy\/30 {
      color: color-mix(in oklab, var(--color-navy) 30%, transparent);
    }
  }

  .text-navy\/40 {
    color: #00084566;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-navy\/40 {
      color: color-mix(in oklab, var(--color-navy) 40%, transparent);
    }
  }

  .text-navy\/50 {
    color: #00084580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-navy\/50 {
      color: color-mix(in oklab, var(--color-navy) 50%, transparent);
    }
  }

  .text-navy\/60 {
    color: #00084599;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-navy\/60 {
      color: color-mix(in oklab, var(--color-navy) 60%, transparent);
    }
  }

  .text-navy\/70 {
    color: #000845b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-navy\/70 {
      color: color-mix(in oklab, var(--color-navy) 70%, transparent);
    }
  }

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

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

  .text-white\/70 {
    color: #ffffffb3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/70 {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }

  .placeholder\:text-navy\/30::placeholder {
    color: #0008454d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .placeholder\:text-navy\/30::placeholder {
      color: color-mix(in oklab, var(--color-navy) 30%, transparent);
    }
  }

  .last\:flex-none:last-child {
    flex: none;
  }

  @media (hover: hover) {
    .hover\:border-indigo:hover {
      border-color: var(--color-indigo);
    }

    .hover\:border-indigo\/40:hover {
      border-color: #505ec566;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-indigo\/40:hover {
        border-color: color-mix(in oklab, var(--color-indigo) 40%, transparent);
      }
    }

    .hover\:border-navy\/20:hover {
      border-color: #00084533;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-navy\/20:hover {
        border-color: color-mix(in oklab, var(--color-navy) 20%, transparent);
      }
    }

    .hover\:bg-indigo\/5:hover {
      background-color: #505ec50d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-indigo\/5:hover {
        background-color: color-mix(in oklab, var(--color-indigo) 5%, transparent);
      }
    }

    .hover\:text-navy\/60:hover {
      color: #00084599;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:text-navy\/60:hover {
        color: color-mix(in oklab, var(--color-navy) 60%, transparent);
      }
    }
  }

  .focus\:border-indigo:focus {
    border-color: var(--color-indigo);
  }

  .active\:scale-95:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .active\:bg-indigo:active {
    background-color: var(--color-indigo);
  }

  .active\:text-white:active {
    color: var(--color-white);
  }

  @media (min-width: 478px) {
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sm\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

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

  @media (min-width: 768px) {
    .md\:block {
      display: block;
    }

    .md\:flex {
      display: flex;
    }

    .md\:hidden {
      display: none;
    }

    .md\:inline {
      display: inline;
    }

    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .md\:py-10 {
      padding-block: calc(var(--spacing) * 10);
    }

    .md\:py-24 {
      padding-block: calc(var(--spacing) * 24);
    }

    .md\:pb-16 {
      padding-bottom: calc(var(--spacing) * 16);
    }
  }

  @media (min-width: 992px) {
    .lg\:py-14 {
      padding-block: calc(var(--spacing) * 14);
    }
  }
}

@layer components {
  .btn-avallon {
    background-color: var(--color-indigo);
    color: var(--color-white);
    font-family: var(--font-heading);
    cursor: pointer;
    border: none;
    border-radius: 100px;
    justify-content: center;
    align-items: center;
    gap: .5rem;
    padding: .75rem 2rem;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
    transition: background-color .2s, transform .15s;
    display: inline-flex;
  }

  .btn-avallon:hover {
    background-color: var(--color-indigo-light);
    transform: translateY(-1px);
  }

  .btn-avallon:disabled {
    opacity: .5;
    cursor: not-allowed;
    transform: none;
  }

  .btn-avallon-outline {
    color: var(--color-indigo);
    font-family: var(--font-heading);
    border: 2px solid var(--color-indigo);
    cursor: pointer;
    background-color: #0000;
    border-radius: 100px;
    justify-content: center;
    align-items: center;
    gap: .5rem;
    padding: .75rem 2rem;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
    transition: all .2s;
    display: inline-flex;
  }

  .btn-avallon-outline:hover {
    background-color: var(--color-indigo);
    color: var(--color-white);
  }
}

@layer base {
  #nis2-tool-root {
    box-sizing: border-box;
    width: 100%;
    overflow-x: hidden;
    font-family: Be Vietnam Pro, sans-serif !important;
  }

  #nis2-tool-root * {
    box-sizing: border-box;
  }

  #nis2-tool-root p, #nis2-tool-root h1, #nis2-tool-root h2, #nis2-tool-root h3, #nis2-tool-root h4, #nis2-tool-root h5, #nis2-tool-root h6 {
    margin: 0;
  }

  #nis2-tool-root h1, #nis2-tool-root h2, #nis2-tool-root h3, #nis2-tool-root h4 {
    font-family: Outfit, sans-serif !important;
  }
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
