:root {
    --mtx-blue: #0C5192;
    --mtx-blue-light: #1865B0;
    --mtx-blue-dark: #003B75;
    --mtx-orange: #FF870F;
    --mtx-orange-light: #FF971E;
    --mtx-orange-dark: #FF7100;
    --mtx-bg-dark: #E7EFF7;
    --mtx-bg-light: FFFFFF;

}


html, body {
  height: 100%;
}

.bg-mtx {
    background: linear-gradient(to right, var(--mtx-blue-light), var(--mtx-blue-dark));
}

.text-mtx {
    font-family: 'Open Sans', sans-serif;
    color: var(--mtx-blue);
}

/* In your main CSS (preferably in @layer components) */
.radio-mtx {
  --input-color: var(--mtx-blue-dark);
  border-color: var(--mtx-blue-light);
}

.card-mtx {
    &:has(>:checked) {
        outline-color: var(--mtx-blue-light);
    }
}


button,
a.btn {
    background: linear-gradient(to right, var(--mtx-blue-light), var(--mtx-blue-dark));
    cursor: pointer;
    transition: background 5s ease;
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: white;
}

.btn-selected {
    background: linear-gradient(to right, var(--mtx-orange-light), var(--mtx-orange-dark)) !important;
}

button:hover,
a.btn:hover {
    background: linear-gradient(to right, var(--mtx-orange-light), var(--mtx-orange-dark));
}



.btn.selected {
  border: 2px solid #22c55e; /* Tailwind green-500 */
}


.btn-mtx-ghost {
    background: var(--mtx-bg-dark) !important;
    color: rgb(148, 148, 148) !important
}

.border-mtx {
    border-color: var(--mtx-blue);
    border-width: 4px;
}

@layer utilities {
  .border-mtx {
    border-color: var(--mtx-blue);
    border-width: 4px;
  }

h2 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: var(--mtx-blue);
    text-transform: uppercase;
}

.section-header {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: var(--mtx-blue);
    text-transform: uppercase;
}

.vraag-label {
    font-family: 'Open Sans', sans-serif;
    font-weight: 700;
    color: var(--mtx-blue);
}

p {
    font-family: 'Open Sans', sans-serif;
    color: black;
}

form p label {
    font-weight: bold;
    font-size: 1rem;
    color: #1f2937; /* Tailwind slate-800 */
    width: 100%;
}

.mtx-input:focus {
    outline: 2px solid var(--mtx-orange);
}

.aspect-ratio-container {
    position: relative;
    width: 100%;
    padding-top: 75%;
    /* 4:3 aspect ratio */
}

.aspect-ratio-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#cats {
    width: 100%;
}

.responsive-video {
    width: 100%;
    /* Fill the width of the container */
    height: auto;
    /* Auto height to maintain aspect ratio */
    aspect-ratio: 16 / 9;
    /* Maintain 16:9 ratio */
    display: block;
    /* Removes inline spacing */
}